从我的书中复制了这个确切的代码并且不起作用

时间:2014-10-18 05:17:24

标签: java

我从我的教科书中复制了这个确切的代码,当我尝试运行它时它只会加载,文件位于java文件的相同位置,并且名称是正确的。我正在使用Dr. Java。所以我只是想知道为什么它不会运行,只是继续加载。我正在使用的书是Java Illuminated第3版。另外,newscores.txt文件只有10个数字,用空格分隔。

import java.util.Scanner;
import java.io.File;
import java.io.IOException;

public class TestScoresAndSummaryStatistics {
    public static void main(String[] args) throws IOException {

        int number;

        File inputFile = new File("newscores.txt");
        Scanner scan = new Scanner(inputFile);

        while (scan.hasNext()); {
            number = scan.nextInt();
            System.out.println(number);

        }
        System.out.println("End of file.");
    }
}

1 个答案:

答案 0 :(得分:3)

你有一个分号结束的while语句。你应该删除它。因为这个分号你的while循环重复运行,你的代码在while循环中变成与循环分开的块。

while (scan.hasNext()); {
    number = scan.nextInt();
    System.out.println(number);

}

更改为

while (scan.hasNext()) {
    number = scan.nextInt();
    System.out.println(number);

}