总结:hashcode与equals

编程

一、hashcode方法

Object.hashCode()方法: 返回该对象的哈希码值。支持此方法是为了提高哈希表(例如  java.util.Hashtable 提供的哈希表)的性能,查询迅速。如字符串存储到hashmap的时候,get的时候直接通过hashcode方法找到存储的位置。

二、equals方法

1、原生的equals方法比较的是应用地址,String类重新了hashcode方法,因此比较的是字符串内容;

2、将对象(假设是Student类,包含name和age两个属性)作为HashMap的key,如何实现去重的?其实一样的道理,也需要重新hashcode方法,这个方法中放一些需要确定唯一的属性,共同生成一个hashcode,这个hashcode就是hash表的地址。

另外,也可以实现equals方法,即什么情况下两个对象相等。

 

参考:

自定义对象作为HashMap的Key

java中hashcode主要来干什么的?

以上是 总结:hashcode与equals 的全部内容, 来源链接: utcz.com/z/518094.html

回到顶部