10.5.2 equals方法的使用
equals方法在Object类中,用于测试一个对象与另一个对象是否相等。对对象来说,判断两个对象是否指向同一个内存区域。其实也可以这样说,字符串处理中的“equals”方法覆盖了Object类中的“equals”方法。
在Java中,每一个类都有自己的“equals”方法,这些方法都是子类覆盖的方法。“equals”方法具有自己独特的一些性质。
❑自反性:当一个对象型变量obj是一个非空对象引用时,obj.equals(obj)的结果是真。
❑对称性:两个对象型变量obj1、obj2,如果obj1.equals(obj2)的结果是真,那么obj2.equals(obj1)的结果也必定是真。
❑传递性:3个对象型变量obj1、obj2、obj3,如果obj1.equals(obj2)的结果是真,同时obj2.equals(obj3)的结果也是真,那么obj1.equals(obj3)的结果必定是真。
❑一致性:对象型变量在不发生变化的前提下,多次调用obj1.equals(obj2)的结果都是一样的。
❑对于任何非空的对象型变量obj, obj.equals(null)的结果应该是false。
至于equals方法的使用,其实在前面章节中都举过例子,这里就不再示例。