所以基本上我有一些麻煩理解不允許此語句使用「或」的邏輯,但完美地使用「AND」。按我的邏輯說,等於Y或Y或N或N,應該工作。但是如果我使用這個它是一個無限循環。代碼塊可以在下面看到;有人可以解釋爲什麼這雖然聲明必須和
response = "empty";
while (!response.equals("Y") && !response.equals("y") && !response.equals("N") && !response.equals("n"))
{
response = stdin.next();
if (!response.equals("Y") && !response.equals("y") && !response.equals("N") && !response.equals("n")) {
System.out.println("Try again, you're still in the loop!");
}
else {
System.out.println("Congratulations you're out the loop!");
}
}
}
任何人都可以向我解釋的邏輯原因||不能使用,但& &完美的作品。其餘的代碼(掃描儀等都在上面,但我沒有包括它們,因爲它們不相關)。 謝謝!
您可能需要使用'equalsIgnoreCase()'。 –
讓我介紹一下['String.equalsIgnoreCase(String s)'](http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#equalsIgnoreCase%28java.lang.String% 29)。它會爲你整理一些東西。 – indivisible
你的if語句沒有意義。無論你在循環中。 – Brian