为什么重写了equals方法后,还要重写hashcode方法

来源:互联网 发布:多机位直播软件 编辑:程序博客网 时间:2024/04/29 20:07

1.重写了equals之后还要重写hashcode方法,是为了map,set集合等类型的使用.①:map和set必须保证对象的唯一.②:集合类判断对象是否相等,是先比较equals是否相等,如果相等则返回true.还要继续判断hashcode返回值是否为true,只有两者都为true,则认为两个对象相等.

2.由于object的hashcode返回的是hash值,即使equals返回的是true,集合也有可能两个对象不相等,所有必须重写hashcode方法

阅读全文
0 0