, поэтому я немного запутался в следующем:Java: Do While with || и && операторов
При тестировании булева первое мое впечатление заключалось в использовании || оператора для условий. Это не сработало, цикл будет повторяться для правильного ответа. Но если бы я использовал оператор & &, тогда он оценил бы условия так, как я этого хотел.
Я чувствую, что это назад, и я не смотрю на это правильно. Может кто-нибудь объяснить это?
Чтобы сделать его более ясным, что я первоначально пытался сделать:
String input;
Scanner keyboard = new Scanner(System.in);
do
{
System.out.print("Enter one of the following names: John, Katie, Richard");
input = keyboard.nextLine();
input = input.toLowerCase();
} while (!input.equalsIgnoreCase("John") && !input.equalsIgnoreCase("Katie") && !input.equalsIgnoreCase("Richard"));
Я хочу, чтобы цикл повторить, пока один из указанных имен не вводится. Поэтому, если я войду в кати, он должен двигаться дальше, но если я вхожу в боб, он должен повториться.
Так что, если я вхожу в john, булев сначала проверяет это. ! (john = john), который равен FT = false. , так как я просто хочу проверить, совпадает ли он с Джоном, а не с Ричардом или Кати. Я бы хотел использовать || оператор. Почему бы мне также не захотеть проверить, равно ли это всем этим именам.
Знаете ли вы, что '&&' делает? Знаете ли вы, что делает '||'? Что вас смущает? –
Где находится 'mediumInput'? 'Keyboard.nextLine()' помещается в 'input'. –
[Законы Де Моргана] (https://en.wikipedia.org/wiki/De_Morgan%27s_laws) могут быть полезны здесь – kuporific