好.所以我是Java的初学者.但是为什么这个循环永远不会结束,即使我输入0或1.
do {
//Ask user to enter 1 or 0
System.out.print("Enter 1 or 0: ");
upOrDown = keyboard.nextInt();
} while(upOrDown != 0 || upOrDown != 1);
//Here the loop should exit if user entered 1 or 0, but it does not.
Run Code Online (Sandbox Code Playgroud)
所以,我在这里错过了什么,可能非常明显,我很抱歉:(
你需要做一个&&.
你说的是"如果数字不是0或不是1,那么重试." 然而,这总是正确的,因为它不能同时为0和1.
所以,这就是你想要的:
do {
//Ask user to enter 1 or 0
System.out.print("Enter 1 or 0: ");
upOrDown = keyboard.nextInt();
} while(upOrDown != 0 && upOrDown != 1);
Run Code Online (Sandbox Code Playgroud)
因为每个数字不是1或不是0.不是吗?))2不是1,1不是0而0不是1
如果你想结束循环,如果upOrDown是0或是1你应该使用&&
while(upOrDown != 0 && upOrDown != 1);