为了账号安全,请及时绑定邮箱和手机立即绑定

布尔真或假

布尔真或假

HUX布斯 2021-12-30 15:48:10
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);        }    }我在尝试学习布尔值时在网上看到了这段代码,结果是错误的。有人可以向我解释为什么输出是假的吗?谢谢
查看完整描述

3 回答

?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

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



查看完整回答
反对 回复 2021-12-30
?
尚方宝剑之说

TA贡献1788条经验 获得超4个赞

自从 boolean toBe = false;


b=toBe || !toBe 

b = false || !fasle

b = false || true 

b = true

所以 b 是真的,这意味着


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

请:请参阅短路逻辑的真值表或 ||


True || x = True

false || True = True

false || Flase = false

x -> 是不在乎即要么 true或false


查看完整回答
反对 回复 2021-12-30
?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

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


a b a || b

1 1   1

1 0   1

0 1   1

0 0   0

这意味着 b 将为真,因此将执行 if 语句中的块。它输出“false”,因为这是toBe.


查看完整回答
反对 回复 2021-12-30
  • 3 回答
  • 0 关注
  • 94 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信