gpt4 book ai didi

java - 缓冲字符串到数组列表,并拆分

转载 作者:行者123 更新时间:2023-11-29 10:16:28 25 4
gpt4 key购买 nike

我正在将一个文本文件缓冲到“arraylist lines”中,然后我需要将每一行拆分为一个新的 arrayList 部分,以便我可以从每一行中找到信息并将数据添加到我构建的模型中,原因我使用 arrayLists 是因为它有可扩展的属性,这意味着我不需要担心行或文本文件的大小。

代码如下:

    try(BufferedReader buffer = 
new BufferedReader(new FileReader("src/Sample.txt")))
{
String currentLine;
ArrayList<String> lines = new ArrayList<String>();
ArrayList<String> parts = new ArrayList<String>();
//ListIterator<String> lineItr = lines.listIterator();

while((currentLine = buffer.readLine()) != null)
{
lines.add(currentLine);

for(String line : lines)
{
parts.addAll(line.split("\\s+"));

}


//lineItr.next();
//lineItr.set(currentLine);

//System.out.println(lineItr.next());
}
}
catch(IOException e)
{
e.printStackTrace();
}

}

我遇到了 parts.addAll(line.split("\s+");我不明白为什么该语句不遍历行,拆分字符串的每个部分并将其添加到部分数组列表中,我在这里误解了什么吗?

感谢小白

最佳答案

list.addAll() 接受一个 java.util.Collection,其中 str.split 返回一个数组而不是一个集合。因此,您不能将其直接添加到列表中。您需要先转换为列表。

for(String line : lines)
{
parts.addAll(Arrays.asList(line.split("\\s+"));
}

关于java - 缓冲字符串到数组列表,并拆分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16358849/

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