布尔值True或False

时间:2018-11-04 19:36:00

标签: java

public class Main {
    public static void main(String[] args) {
        boolean b = false;
        b = true;

        boolean toBe = false;
        b = toBe || !toBe;
        if (b) {
            System.out.println(toBe);
        }



    }

在尝试学习布尔值时,我在网上看到了此代码,其输出为false。有人可以向我解释为什么输出错误吗?谢谢

3 个答案:

答案 0 :(得分:0)

您将“ b”设置为false,然后将其更改为true,因此“ b”为true。然后将“ toBe”设置为false。下一行不执行任何操作,它返回true,但未将其分配给任何内容。然后,您检查“ b”是否等于true,并且确实如此。因此,然后打印出等于“ false”的“ toBe”。这就是打印false的原因。

希望这会有所帮助!

答案 1 :(得分:0)

||是逻辑或运算符。如果至少一个运算符为true,则返回true。真值表如下所示:

a b a || b
1 1   1
1 0   1
0 1   1
0 0   0

这意味着b将为true,因此if语句中的块将执行。并且输出“ false”,因为这是toBe的值。

答案 2 :(得分:0)

boolean toBe = false;

b=toBe || !toBe 
b = false || !fasle
b = false || true 
b = true

所以b为true,表示

System.out.println(toBe); // prints false since tobBE is false

请:请参阅真值表以了解短路逻辑或||

True || x = True
false || True = True
false || Flase = false

x ->是无关紧要的,即truefalse