Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何存储返回列表以便在其他类中使用?_Java_List_Class_Java.util.scanner_Storage - Fatal编程技术网

Java 如何存储返回列表以便在其他类中使用?

Java 如何存储返回列表以便在其他类中使用?,java,list,class,java.util.scanner,storage,Java,List,Class,Java.util.scanner,Storage,我创建了一个读取和存储csv文件的方法,其中是一个片段,用于读取csv文件,然后将其放入列表中: 如何存储当前的列表,以便将其用于同一类中的另一个方法 公共类某物{ public class Something { private ArrayList<String> list = new ArrayList<>(); .... Scanner inputStream = new Scanner(file); while (inputStream.

我创建了一个读取和存储csv文件的方法,其中是一个片段,用于读取csv文件,然后将其放入
列表中

如何存储当前的
列表
,以便将其用于同一类中的另一个方法

公共类某物{
public class Something { 
   private ArrayList<String> list = new ArrayList<>();
   ....
   Scanner inputStream = new Scanner(file);
   while (inputStream.hasNext()) {
            list.add(inputStream.nextLine());
   }
   inputStream.close();

... use the list object as you wish...
private ArrayList list=new ArrayList(); .... 扫描仪输入流=新扫描仪(文件); while(inputStream.hasNext()){ add(inputStream.nextLine()); } inputStream.close(); …根据需要使用列表对象。。。

列表是一个类变量,因此该类的任何函数都可以访问它

根据需要在集合中使用任何列表

Arraylist更适合存储和访问数据。 LinkedList更适合于处理数据。所以请明智地选择。这里我将使用ArrayList

import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

public class ParseCSVFile {

    public static void main(String[] args) {

        // Get the csv file path
        String fileName = "yourCsvFile.csv";

        // method returns list of strings in csv file
        List<List<String>> lines = parseCsvFile(fileName);

        // Method to print the contents
        printCSVListContents(lines);

    }

    /**
     * Prints the CSV list contents.
     *
     * @param listOfLines the list of lines
     */
    private static void printCSVListContents(final List<List<String>> listOfLines) {
        int initialLineNo = 1;
        for (List<String> line : listOfLines) {
            int columnNo = 1;
            for (String contentsOfLine : line) {
                System.out.println("Line Number: " + initialLineNo + " Column Number: " + columnNo + " Contents: " +  contentsOfLine);
                columnNo++;
            }
            initialLineNo++;
        }
    }

    /**
     * Parses the CSV file.
     *
     * @param inputLineNumber the file name
     * @return the list
     */
    private static List<List<String>> parseCsvFile(final String inputLineNumber) {
        File file = new File(inputLineNumber);

        // To provide a 2-dimensional array of strings
        List<List<String>> lineList = new ArrayList<>();
        Scanner scannerStream;

        try {
            scannerStream = new Scanner(file);
            while (scannerStream.hasNext()) {
                String line = scannerStream.next();
                String[] values = line.split(",");
                lineList.add(Arrays.asList(values));
            }
            scannerStream.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }

        return lineList;

    }
     }
导入java.io.File;
导入java.io.FileNotFoundException;
导入java.util.ArrayList;
导入java.util.array;
导入java.util.List;
导入java.util.Scanner;
公共类ParseCSVFile{
公共静态void main(字符串[]args){
//获取csv文件路径
字符串fileName=“yourCsvFile.csv”;
//方法返回csv文件中的字符串列表
列表行=parseCsvFile(文件名);
//方法打印内容
打印内容(行);
}
/**
*打印CSV列表内容。
*
*@param listOfLines行列表
*/
私有静态void printCSVListContents(最终行列表){
int initialLineNo=1;
用于(列表行:列表行){
int columnNo=1;
用于(字符串内容行:行){
System.out.println(“行号:+initialLineNo+”列号:“+columnNo+”内容:“+ContentsOffline”);
columnNo++;
}
initialLineNo++;
}
}
/**
*解析CSV文件。
*
*@param inputLineNumber文件名
*@返回列表
*/
专用静态列表parseCsvFile(最终字符串inputLineNumber){
文件文件=新文件(inputLineNumber);
//提供字符串的二维数组
List lineList=new ArrayList();
扫描流;
试一试{
scannerStream=新扫描仪(文件);
while(scannerStream.hasNext()){
字符串行=scannerStream.next();
字符串[]值=行。拆分(“,”);
添加(数组.asList(值));
}
scannerStream.close();
}catch(filenotfounde异常){
e、 printStackTrace();
}
返回行列表;
}
}
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

public class ParseCSVFile {

    public static void main(String[] args) {

        // Get the csv file path
        String fileName = "yourCsvFile.csv";

        // method returns list of strings in csv file
        List<List<String>> lines = parseCsvFile(fileName);

        // Method to print the contents
        printCSVListContents(lines);

    }

    /**
     * Prints the CSV list contents.
     *
     * @param listOfLines the list of lines
     */
    private static void printCSVListContents(final List<List<String>> listOfLines) {
        int initialLineNo = 1;
        for (List<String> line : listOfLines) {
            int columnNo = 1;
            for (String contentsOfLine : line) {
                System.out.println("Line Number: " + initialLineNo + " Column Number: " + columnNo + " Contents: " +  contentsOfLine);
                columnNo++;
            }
            initialLineNo++;
        }
    }

    /**
     * Parses the CSV file.
     *
     * @param inputLineNumber the file name
     * @return the list
     */
    private static List<List<String>> parseCsvFile(final String inputLineNumber) {
        File file = new File(inputLineNumber);

        // To provide a 2-dimensional array of strings
        List<List<String>> lineList = new ArrayList<>();
        Scanner scannerStream;

        try {
            scannerStream = new Scanner(file);
            while (scannerStream.hasNext()) {
                String line = scannerStream.next();
                String[] values = line.split(",");
                lineList.add(Arrays.asList(values));
            }
            scannerStream.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }

        return lineList;

    }
     }