当我们在集合中添加一个由我们自己创建的类时,其加入的元素需要开辟新的空间,尽管内容相同,但是其哈希值不同,又因为Set集合在去重时会先判断哈希值,所以需要重写hashCode()方法.
如果哈希相同,则会调用equals()方法去进一步判断
而未重写前调用的equals()方法依旧比较的地址
所以此时equals()无法进行对其值的正确判断,
因此必须要重写equals方法
当我们在集合中添加一个由我们自己创建的类时,其加入的元素需要开辟新的空间,尽管内容相同,但是其哈希值不同,又因为Set集合在去重时会先判断哈希值,所以需要重写hashCode()方法.
如果哈希相同,则会调用equals()方法去进一步判断
而未重写前调用的equals()方法依旧比较的地址
所以此时equals()无法进行对其值的正确判断,
因此必须要重写equals方法