【发布时间】:2014-05-13 21:21:28
【问题描述】:
我在尝试运行我的代码时收到以下错误输出。
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:907)
at java.util.Scanner.next(Scanner.java:1416)
at Olympics.main(Olympics.java:61)
Java Result: 1
该项目包括一个名为 olympics.txt 的文本文件,它是一个包含奥运运动员及其国家/地区等统计数据的文件。我有文件中的行数 lineNum,我正在使用这个 for 循环来添加每个信息到相应的数组中。
for(int j = 0; j <= lineNum-1; j++)
{
String line = fileScan.nextLine();
Scanner lineScan = new Scanner(line);
lineScan.useDelimiter("\t");
name[j] = lineScan.next();
age[j] = lineScan.nextInt();
country[j] = lineScan.next();
year[j] = lineScan.next();
String ceremony = lineScan.next();
sport[j] = lineScan.next();
int gold = lineScan.nextInt();
int silver = lineScan.nextInt();
int bronze = lineScan.nextInt();
total[j] = lineScan.nextInt();
}
第 61 行是 age[j] = lineScan.nextInt();
我评论了年龄线,看看它是否有效,但它仍然无效。感谢您提供任何帮助,如果您需要更多代码,请告诉我。
【问题讨论】:
-
您能告诉我们在导致异常的循环迭代期间
line的值吗? -
我相信你的问题与
next()方法的使用有关。
标签: java io java.util.scanner