Hash Code和equals方法的关系

2021-09-22  本文已影响0人  何鹏辉

hashCode的作用是获取哈希码,也称为散列码;它实际上是返回一个int整数。这个哈希码的作用是确定该对象在哈希表中的索引位置

hashCode的作用是获取哈希码,也称为散列码;它实际上是返回一个int整数。这个哈希码的作用是确定该对象在哈希表中的索引位置

equals它的作用是判断两个对象是否相等,如果对象重写了equals方法,比较两个对象的内容是否相等;如果没用重写,比较两个对象的地址是否相同,价于“==”。

等于它的作用是判断两个对象是否相等,如果对象重写了等于方法,比较两个对象的内容是否相等;如果没用重写,比较两个对象的地址是否相同,价于“==”。

总结:

1、equals方法用于比较对象的内容是否相等(覆盖以后)

2、hashcode方法只有在集合中用到

3、当覆盖了equals方法时,比较对象是否相等将通过覆盖后的equals方法进行比较(判断对象的内容是否相等)。

4、将对象放入到集合中时,首先判断要放入对象的hashcode值与集合中的任意一个元素的hashcode值是否相等,如果不相等直接将该对象放入集合中。如果hashcode值相等,然后再通过equals方法判断要放入对象与集合中的任意一个对象是否相等,如果equals判断不相等,直接将该元素放入到集合中,否则不放入。

5、将元素放入集合的流程图:

上一篇下一篇

猜你喜欢

热点阅读