Я работаю над Java-программой, которая выполняется до тех пор, пока не будет введена буква S. Вот код:
Код: Выделить всё
// Loops until the letter S is entered
class ForTest {
public static void main(String[] args)
throws java.io.IOException {
int i;
char x;
System.out.println("Enter 'S' to stop.");
for(i = 0; (x = (char) System.in.read()) != 'S'; i++) {
System.out.println("Iteration " + i + ", read character: " + x);
}
}
}
Почему программа отображает дополнительные итерации, даже если я ввожу только один символ (в данном случае L)?
Для ввода одного символа, например «h», я ожидаю, что результат будет следующим:
Код: Выделить всё
Iteration 0, read character: hКод: Выделить всё
Iteration 0, read character: h
Iteration 1, read character:
Iteration 2, read character:
Я пробовал печатать символы в цикле, но два последних символа кажутся пробелами
Подробнее здесь: https://stackoverflow.com/questions/791 ... looks-like
Мобильная версия