gpt4 book ai didi

java - (true != false != true) 与 (false != true != false) 有何不同?

转载 作者:行者123 更新时间:2023-12-03 19:42:21 36 4
gpt4 key购买 nike

我最近参加了 Java 的入门测试,这个问题让我很困惑。完整的问题是:

boolean b1 = true;
boolean b2 = false;
if (b2 != b1 != b2)
System.out.println("true");
else
System.out.println("false");

我的第一个问题是 (b2 != b1 != b2) 是什么意思,第二个问题,如标题中所述,是 (false != true != false) 如何计算为 true 而 (true != false ! = true) 计算结果为 false(我在 Netbeans 上测试过)。

最佳答案

您有两个 boolean 值比较,第一个比较产生的结果与另一个 boolean 值(最后一个)进行比较。
相等运算符在句法上是左结合的(它们从左到右分组)。

要理解,您可以通过两次比较来重写实际比较:

1) false != true != false == true as

boolean result = false != true; // ->true
result = true != false; // ->true
result == true;

2) true != false != true == false

boolean result = true != false; // -> true
result = true != true; // -> false
result == false;

或者你也可以用括号括起第一个比较,以便于阅读评估优先级(从左到右):

1) false != true != false == true as

 <=> (false != true) != false 
<=> true != false
<=> true

2) true != false != true == false

 <=> (true != false) != true 
<=> true != true
<=> false

关于java - (true != false != true) 与 (false != true != false) 有何不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49708189/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com