Я пытаюсь работать с вводом, но у меня проблемы ... если я использую код ниже, он не заканчивается ... поэтому я нахожусь в бесконечном l oop. и он пишет что-то вроде этого, даже когда мой ввод имеет конец файла:
...
A number has not been parsed from line n
A number has not been parsed from line n+1
A number has not been parsed from line n+2
... (infinite)
, но я хочу вместо этого это:
...
End of input detected!
Ввод выглядит так:
1
2
3
4
5
double[] numbers = new double[10];
int counter_number = 0;
while (sc.hasNextLine()) {
...
line++;
if(sc.hasNextDouble()) {
numbers[counter_number] = sc.nextDouble();
counter_number++;
}
else{
System.out.println("A number has not been parsed from line "+ line);
continue;
}
if (sc.hasNextLine() == false) {
System.err.println("End of input detected!");
}
if (((counter_number)==10) || ((sc.hasNextLine() == false)
...
counter_number = 0;
}
}
пока этот l oop никогда не закончится? Я видел учебники, где они использовали "while (s c .hasNextLine ())", и все закончилось. Я начинающий с java.