我在Java测试中遇到了这个问题,我必须为其分配值a,b因此该表达式的计算结果为true:
(a<=b && b<=a && a!=b)
Run Code Online (Sandbox Code Playgroud)
可悲的是,我不知道答案是什么.
Men*_*ena 79
这里有一个简单的技巧.
你不能只考虑布尔逻辑.使用它,这个组合......
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);
Run Code Online (Sandbox Code Playgroud)
这里发生的是:a因为对象引用不等于b对象引用,尽管它们当然具有相等的整数值.
| 归档时间: |
|
| 查看次数: |
2062 次 |
| 最近记录: |