java ==和equals的区别 为什么要同时实现hashCode和equals?
浏览量:1554
时间:2021-03-11 08:11:38
作者:admin
为什么要同时实现hashCode和equals?
1. 重写equals方法时,需要重写hashcode方法,主要用于map、set等集合类型;TA:map、set等集合类型中存储的对象必须唯一;要判断两个对象是否相等,集合类首先判断equals是否相等。如果equals返回true,则还判断hashcode的返回值是否为true。只有当两者都返回true时,才能认为这两个对象相等。T2。因为对象的hashcode返回对象的hash值,所以即使equals返回true,集合也可能确定两个对象不相等。因此,必须重写hashcode方法,以确保当equals返回true时,hashcode也返回true,这样存储在集合中的对象就可以是唯一的。
java ==和equals的区别 hashcode相同equals不同 hashcode的作用
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。