gpt4 book ai didi

java - 如何存储返回列表以便我可以在另一个类中使用它?

转载 作者:行者123 更新时间:2023-11-30 02:12:54 26 4
gpt4 key购买 nike

我创建了一种读取和存储 csv 文件的方法,其中是读取 CSV 文件然后将其放入 list<String> 的代码片段:

Scanner inputStream = new Scanner(file);
while (inputStream.hasNext()) {
List.add(inputStream.nextLine());
}
inputStream.close();

如何存储当前的 List所以我可以将它用于同一个类中的另一个方法吗?

最佳答案

根据您的要求使用集合中的任何列表。

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 - 如何存储返回列表以便我可以在另一个类中使用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49595520/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com