HashMap的key为对象时,必须重写对象的hashcode()和equals()方式,因为判断对象是否重复时,先判断对象
默认的hashcode方法返回的是对象的内存地址由哈希算法转换成的一个整数,哈希算法具有一定的偶然性,不同的内存地址可能计算出相同的哈希值 hash值,若相等再判断equals方法
@EqualsAndHashCode(callSuper = false)
:默认只使用本类的非静态属性生成 equals/hashcode方法,callSuper = true,将使用父类中的属性和本类中的属性 生成equals/hashcode方法
HashMap
最新推荐文章于 2024-07-24 17:27:32 发布