Endlosschleife auf Scanner.hasNext, Lesen aus einer Datei
Ich stehe offenbar vor einer Endlosschleifewhile(input.hasNext())
, wie im folgenden Code
File file = new File("data.txt");
Scanner input = new Scanner(file);
int sum = 0;
while (input.hasNext()) {
if (input.hasNextInt()) {
sum += input.nextInt();
}
}
System.out.println(sum);
Einige verwandte Fragen erklären, warum es immer true zurückgibt, wenn input stream istSystem.in
Ich scanne jedoch durch aFile
.
Bitte lassen Sie mich wissen, wo ich falsch liege.
Ich versuche, die Summe der eindeutigen ganzzahligen Werte zu berechnen (Leerzeichen, wo sie auftreten).
Bearbeiten:
Lektion gelernt,input.hasNext()
Bewegt den Zeiger nicht in die nächste Zeile und der Scanner bewegt sich daher nicht an Eingaben vorbei. Wie in den Antworten auf diese Frage sowie erläutertHier .