In Java-Programmierung, ich versuche, ein int durch eine while-Schleife setzen, und ich möchte die Int weniger als neun und größer als null sein. Aber wenn das Programm läuft, registriert es nur die erste Bedingung (in diesem Fall "num < 1") und ignoriert die zweite ("num> 9").Java - While-Schleife Bedingte Anweisung Fehler mit int Werte
int num = console.nextInt();
while(num<1 && num>9){
System.out.println("You must type a number less than nine and greater than zero to continue.");
num = console.nextInt();
}
Ich habe ihre Bestellung umgedreht, und das gleiche Problem taucht auf. Warum registriert das Programm die erste Bedingung in der while-Schleife, aber nicht die zweite? Ich hatte dieses Problem nie mit Strings, sind Ints in dieser Situation anders formatiert?
Zuerst, warum, warum überprüfen Sie, ob num> 9 AND num <1? Das ist unmöglich und wird niemals den Code erreichen. Um zu prüfen, ob eine der Bedingungen zutrifft, verwenden Sie || wie in einem OR-Operator – Li357