Java делает пока цикл, заставляющий тестирование строки действовать по-другому
Я очень смущен поведением использования || оператор функции .equals. Есть ли причина, по которой я не могу использовать его на строках или что-то?
это работает:
do{
System.out.println("Play again? [Y/N]");
//input: Y
play = in.nextLine();
play = play.toUpperCase();
}
while(!"Y".equals(input) ); //breaks out of loop (as it should)
почему это не работает ?!
do{
System.out.println("Play again? [Y/N]");
//input: Y
play = in.nextLine();
play = play.toUpperCase();
}
while( !"Y".equals(input) || !"N".equals(input) ); //infinite loop