A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

Set集合中HashSet子类是元素无序,唯一性的,判断唯一性就是用hashCode值,那么Objcet的hashCode方法与该类的hashCode方法有什么区别

6 个回复

正序浏览
赞一个,赞一个,么么哒
回复 使用道具 举报
赞一个,赞一个,么么哒
回复 使用道具 举报
底层依赖HashCode()与equals()
        首先比较哈希值
        如果相同,继续走,比较地址值或者走equals()方法
        如果不同,就直接添加元素       
       
        简单的说就是:
                先hashCode()值是否相同
                相同::继续走equals()方法
                返回true:说明元素重复,就不添加
                返回false:说明元素不重复,就添加
        不同,就直接添加元素
回复 使用道具 举报
加油,一起努力
回复 使用道具 举报
来看看答案
回复 使用道具 举报
HashSet里的hashCode()方法返回该Set中元素的哈希码的总和。Object中的hashCode()方法返回该对象的哈希码。不过HashSet判断元素唯一性并不是用本类的hashCode()方法,而是使用的作为元素存入的对象的hashCode()和equals()方法。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马