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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

HashSet的元素排序底层是怎样的

4 个回复

倒序浏览
底层是哈希表结构。哈希表也是数组机制,数组中也存放对象,而这些对象往数组中存放时的位置比较特殊,当需要把这些对象存放到数组时,会根据这些对象的特有数据结合相应的算法,计算出对象在数组中的位置,然后把对象存放到数组中。
实现名词解释:
当向哈希表存放元素时,需要根据元素的特有数据结合hashCode的算法算出对象在表中的存放位置。但如果算出两个对象的位置一样(也叫哈希冲突),这时会调用对象的equals方法进行比较这两个对象是不是同一个对象,如果比较是ture就不会把第二个对象存放到哈希表中,如果比较是false,就会把这个值存到哈希表中

评分

参与人数 1黑马币 +8 收起 理由
zhangzhenxi + 8 很给力!

查看全部评分

回复 使用道具 举报 2 0
他能排序吗??,不能把list的实现类才可以吧
回复 使用道具 举报
数组加双链表,我听老师提过这么一句
回复 使用道具 举报 1 0
不要搞混乱了,HashSet没有排序吧,想排序就用TreeSet,当然LinkedHashSet就可以保证怎么存就怎么取
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马