gpt4 book ai didi

java - 这个 'if' 在 Java 中使用三个同时表达式进行评估

转载 作者:IT老高 更新时间:2023-10-28 20:36:14 25 4
gpt4 key购买 nike

我在 Java 测试中遇到了这个问题,我必须为 ab 赋值,所以这个表达式的计算结果为 true:

(a<=b && b<=a && a!=b)

很遗憾,我不知道答案是什么。

最佳答案

这里有一个简单的技巧。

你不能只用 boolean 逻辑来思考这个问题。使用它,这个组合......

  • a 小于或等于 b,且
  • b 小于或等于 a,且
  • a 不等于 b

...永远不会返回 true

但是,!= 运算符会在其操作数是对象时比较引用。

所以,下面会返回true:

Integer a = 1;
Integer b = new Integer(1);
System.out.println(a<=b && b<=a && a!=b);

这里发生的情况是:作为对象引用的 a 不等于作为对象引用的 b,尽管它们当然拥有相等的整数值。

关于java - 这个 'if' 在 Java 中使用三个同时表达式进行评估,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32759492/

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