麻烦读下一个int

241*_*116 0 java

(原始问题,已经回答)

我想要一个程序从文本文件中读取整数.数据文件如下所示:

5 4
3 5
4 5
3 2
Run Code Online (Sandbox Code Playgroud)

每行的第一个数字是par,第二个数字是分数.因为5 - 4 = 1,得分低于标准杆1(这是一只小鸟).我的第一行代码:

    in = new Scanner (dataFile);
    System.out.println("Golf Scores: ");                                                
    String line1 = in.nextLine();       
    System.out.println("Score 1: " + line1);
    int par1 = in.nextInt();
    System.out.println("Par is: " + par1);
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我得到了这个:

高尔夫球得分:

得1:5 4

标准是:3

所以标准杆和得分正确显示.但是,显示的参数显示文本文件中下一行的参数.我希望它再次显示"5".我尝试将in.nextInt放在in.nextLine之前,但是当我尝试时,我得到了这个

高尔夫球得分:

得1:4

标准是:5

如果我需要添加任何内容来更好地解释我的问题,请告诉我.

ars*_*jii 5

你不能"回放"扫描仪,一旦你读完了这条线,它就消失了,你再也无法从中读取.你可以尝试这样的事情:

int par = in.nextInt();
int score = in.nextInt();

System.out.println("Score: " + par + " " + score);
System.out.println("Par is:" + par);
Run Code Online (Sandbox Code Playgroud)

在这里,我们分别读取和存储两个整数,并在之后显示它们.