做while循环不跳出循环?

do while loop doesn't get out of the loop?

我很确定这应该有效... 但即使我输入 0 或 1,它仍然要求我选择一种颜色。 是我傻还是输入0或1就退出循环?

public static int setColour() {
    EasyReader keyboard = new EasyReader();
    int colour;
    do{
        colour = keyboard.readInt("Pick a colour (black = 0, white = 1): ");
    }while (colour != 0 || colour != 1);
    return colour;
}

使用 || 运算符永远不会同时满足这两个条件。你要

} while (colour != 0 && colour != 1);

使用||永远不会 return 正确的结果。然而,&& 运算符将 return 您的答案准确无误。