嗨,我有一个相当简单的程序,但是我在理解为什么运行它时会有一个inifite循环时遇到了麻烦。我正在读取的文件中有10个整数。我正在使用Eclipse Juno,控制台中的输出从281363无限地开始以1计数。我怎样才能解决这个问题?提前致谢。
import java.util.*;
import java.io.*;
public class TestScoreAnalyzer
{
public static void main(String[] args) throws FileNotFoundException
{
int arraySize = 0;
File file = new File("C:\\Users\\Quinn\\workspace\\CPS121\\src\\
additionalAssignments\\scoresSample.txt");
Scanner inputFile = new Scanner(file);
while(inputFile.hasNextInt())
{
arraySize++;
System.out.println(arraySize);
}
inputFile.close();
}
}
最佳答案
您永远不会调用inputFile.nextInt()
-您只会调用hasNextInt()
,实际上并不会提高文件中的位置。您可能想要:
while (inputFile.hasNextInt())
{
arraySize++;
System.out.println(arraySize);
int value = inputFile.nextInt();
// Do something with the value?
}
关于java - 用Java读取整数文本文件的无限循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11790978/