(假设“相等”用符号"~"表示)
但是,囿于实际表达的限制,在Java中,==并没有在所有情况下都满足上面的三条性质。具体,在本Puzzle中有例子说明。
关于2,书中举例的代码片段如下:
long x = Long.MAX_VALUE;
double y = (double) Long.MAX_VALUE;
long z = Long.MAX_VALUE - 1;
System.out.print((x == y) + " "); //Imprecise
System.out.print((y == z) + " "); //Imprecise
System.out.println((x == z)); // Precise
TODO:以下将记录研究附5后的一些内容。
附