java中是否存在任何配置标志,是否将null == null将被比较为false或true?
现在,它总是结果为true。
用例是将以下逻辑与mysql对齐,以便它可以返回相同的结果:
在java中
System.out.println(null == null); //true
在mysql中
select if(null = null, 'true', 'false'); -- false
换句话说,java中有一个配置功能,可以配置比较的结果逻辑(例如,以及Double.NEGATIVE_INFINITY == Double.NaN的输出)?
Configuration table
Configuration flag | Default | Set Value
-------------------------------------- | ------ | --------
null==null | true | false
Double.NEGATIVE_INFINITY == Double.NaN | false | false
true = true | true | true
.....
那么是否可以通过某些标志进行配置?
最佳答案
null == null
的结果为defined by the JLS:
在运行时,如果操作数值都为null或都引用相同的对象或数组,则==的结果为true;否则,结果为假。
任何重新定义此行为的配置选项都将违反规范。
关于java - 我可以在java中设置一些配置标志,无论null == null将为false还是true?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45099560/