2 回答

TA贡献1818条经验 获得超11个赞
扫描文件中的行,然后扫描 匹配项...arr
try (Scanner scan = new Scanner(file)) {
while (scan.hasNext()) {
String next = scan.next()
for(int i = 0; i<arr.length; i++){
if (next.equals(arr[i])){
wordCount++;
}
}
}
}

TA贡献1858条经验 获得超8个赞
这里发生的事情是:在第一个循环中,到达文件的末尾,您只得到“hello”的计数。您可以在每个循环的末尾/开头重新调整指向文件开头的指针。
String[] arr = {"hello", "test", "example"};
File file = new File(example.txt);
int wordCount = 0;
for(int i = 0; i<arr.length; i++){
Scanner scan = new Scanner(file);
while (scan.hasNext()) {
if (scan.next().equals(arr[i])){
wordCount++;
}
}
}
System.out.println(wordCount);
添加回答
举报