gpt4 book ai didi

Java从文本文件中读取

转载 作者:行者123 更新时间:2023-12-01 18:05:41 24 4
gpt4 key购买 nike

我正在尝试从文本文件中读取并使用列表仅打印不重复的行。

File file = new File("E:/......Names.txt");
List<String> names = new ArrayList<String>();

Scanner scan = new Scanner(file);
int j=1;

while(scan.hasNextLine() && j!=100 ){
if(!names.contains(scan.nextLine()))
names.add(scan.nextLine());

System.out.println(names);
j++;
}
scan.close();

最佳答案

而不是打电话scan.nextLine()两次,您应该将值存储在变量中:

String name = scan.nextLine();
if (!names.contains(name)) {
names.add(name);

// ...
}

否则,每次调用scan.nextLine()时您都会得到不同的值,所以您用 contains 检查的值与你不同add .

但是,使用 Set<String> 更容易,保证不允许重复:

Set<String> names = new LinkedHashSet<>();
// ...
while (scan.hasNextLine() && names.size() < 100) {
if (names.add(scan.nextLine()) {
// Only runs if it wasn't there before.
}
}

关于Java从文本文件中读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36617747/

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