このプログラムはテキスト ファイルを読み取ります。この場合は、次のファイルを読み取ります。
Sam
5 0 0 0
Dave
5 5 0 0
Bill
5 -5 0 0
Louise
3 3 5 0
プログラムの早い段階で、次の while ループを実行します。
int count = 0;
while (input.hasNextLine())
{
count++;
if (count % 2 == 1) //for every other line, reads the name
{
String line = input.nextLine();
names.add(line); //puts name into array
}
if (count % 2 == 0) //for every other line, reads the ratings
{
ArrayList<Integer> rtemp = new ArrayList<Integer>();
while (input.hasNextInt())
{
int tempInt = input.nextInt();
rtemp.add(tempInt);
}
allratings.add(rtemp);
}
}
どういうわけか、この while ループが完了するまでに、int カウントは 14 になっています。私はそれを 8 にしたいだけであり、テキストが 8 行しかないことを考えると、そうあるべきだと考えています。行ごとに実行します。明らかに、これはプログラムの後半で大きな問題を引き起こします。何が起こっているのですか?