gpt4 book ai didi

java - 如何访问java中字符串数组动态数组的元素?

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

我正在尝试使用 opencsv ( http://opencsv.sourceforge.net/ )。下载的 opencsv 中包含示例。以下是他们创建动态数组的示例的摘录:

CSVReader reader = new CSVReader(new FileReader(ADDRESS_FILE));
String [] nextLine;
while ((nextLine = reader.readNext()) != null) {
System.out.println("Name: [" + nextLine[0] + "]\nAddress: [" + nextLine[1] + "]\nEmail: [" + nextLine[2] + "]");
}

它读取的CSV文件如下:

Joe Demo,"2 Demo Street, Demoville, Australia. 2615",joe@someaddress.com
Jim Sample,"3 Sample Street, Sampleville, Australia. 2615",jim@sample.com
Jack Example,"1 Example Street, Exampleville, Australia. 2615",jack@example.com

如果我将 println 语句移到 while 循环之外,我会在 Eclipse 中收到错误消息:“空指针访问:变量 nextLine 在此位置只能为空。”

我的猜测是 nextLine 有一个指针当前指向它的最后一个位置或超过它的最后一个位置。我想我的问题是,如何控制该指针?

最佳答案

nextLine == null 时,您退出循环。因此,当您将 println 语句移出循环时,nextLinenull。错误 “空指针访问:变量 nextLine 在此位置只能为 null。” 完全有意义。

要在循环后访问您阅读的所有内容,您可以执行以下操作:

在进入循环之前添加:

List<String[]> readLines = new ArrayList<>();

并在循环中执行此操作:

readLines.add(nextLine);

因此在循环之后,您可以从 readLines 列表中读取所有读取行。

关于java - 如何访问java中字符串数组动态数组的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13327032/

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