在java的集合中,判断两个对象是否相等的规则
(1)先判断两个对象的hashCode是否相等:
如果不相等,认为两个对象也不相等,结束。
如果相等,转(2)。
其实,这一点只是为了提高存储效率而要求的,其实理论上没有也可以,但如果没有,实际使用时效率会大大降低)。
(2)再判断两个对象用equals运算是否相等:
如果不相等,认为两个对象也不相等。
如果相等,认为两个对象相等(equals()是判断两个对象是否相等的关键)。
在java的集合中,判断两个对象是否相等的规则
(1)先判断两个对象的hashCode是否相等:
如果不相等,认为两个对象也不相等,结束。
如果相等,转(2)。
其实,这一点只是为了提高存储效率而要求的,其实理论上没有也可以,但如果没有,实际使用时效率会大大降低)。
(2)再判断两个对象用equals运算是否相等:
如果不相等,认为两个对象也不相等。
如果相等,认为两个对象相等(equals()是判断两个对象是否相等的关键)。