Think in Java 中设计 equals() 的五条原则
- 自反性。
即x.equals(x)为 true - 对称性。
若x.equals(y)为 true,那么y.equals(x)为 true - 传递性。
若x.equals(y)为 true 且y.equals(z)为 true,那么x.equals(z)也为 true - 一致性。
对于x.equals(y),只要判定信息不变,无论比较多少次结果均应相同。 - 若
x != null为 true,那么x.equals(null)为 false
浙公网安备 33010602011771号