在 Java 中防止永无止境的 while 循环

Preventing a never ending while loop in Java

我有以下代码来检查正在导入的文件,我想计算它拥有的数据行数,以便我可以将它们分配给一个数组。但是循环只是保持 运行 而不会在我拥有的 8 行数据处停止。

这是我用于不断循环计数的代码:

Scanner in = new Scanner (new FileInputStream("src/data/VinylRecords.txt"));
int lines = 0;
while (in.hasNextLine()) {
    lines += 1;
}
System.out.println("number of lines " + lines);

我是 Java 的新手,但在 ok 之前使用过 while 循环,看不出这有什么问题?谁能帮我指明正确的方向?

"hasNextLine() 是 Java Scanner class 的一个方法,用于检查此扫描仪的输入中是否有另一行。如果 returns 为真它会找到另一行,否则 returns false" https://www.javatpoint.com/post/java-scanner-hasnextline-method 但它不会改变扫描仪值。 你需要添加 .nextLine()