猿问

布尔真或假

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);

        }




    }

我在尝试学习布尔值时在网上看到了这段代码,结果是错误的。有人可以向我解释为什么输出是假的吗?谢谢


HUX布斯
浏览 95回答 3
3回答

蝴蝶刀刀

您将“b”设置为false,然后将其更改为true,因此“b”为true。然后将“toBe”设置为false。下一行什么都不做,它返回 true 但不将其分配给任何东西。然后你检查“b”是否等于真,它确实如此。那么你打印出等于 false 的“toBe”。这就是为什么打印 false 的原因。

尚方宝剑之说

自从 boolean toBe = false;b=toBe || !toBe b = false || !fasleb = false || true b = true所以 b 是真的,这意味着System.out.println(toBe); // prints false since tobBE is false请:请参阅短路逻辑的真值表或 ||True || x = Truefalse || True = Truefalse || Flase = falsex -> 是不在乎即要么 true或false

梵蒂冈之花

||是逻辑或运算符。如果至少有一个运算符为真,则返回真。它的真值表如下所示:a b a || b1 1   11 0   10 1   10 0   0这意味着 b 将为真,因此将执行 if 语句中的块。它输出“false”,因为这是toBe.
随时随地看视频慕课网APP

相关分类

Java
我要回答