码迷,mamicode.com
首页 > 其他好文 > 详细

解说HashSet如何保证元素的唯一性

时间:2014-05-15 08:54:32      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:hashset hashcode equals

    HashSet底层数据结构是哈希表,哈希表按哈希值来存储,HashSet集合中有若干个存储区域,而每个对象可以计算出一个hash值,系统会自动将这个值分组,对应若干个存储区域。当添加新元素时,系统会计算出这个元素的hash值,然后跟存储区域的每一个元素进行比较,如果不相同则添加该新元素。如果相同再equals比较,若为false,则添加该元素。

    简单说就是同过元素的两个方法,hashcode()和equals()来完成,如果元素的hashCode值相同,再判断equals是否为true,若为true就存不进去,如果元素的hashCode值不同,不会调用equals,直接存进去

本文出自 “Tracy的博客” 博客,谢绝转载!

解说HashSet如何保证元素的唯一性,布布扣,bubuko.com

解说HashSet如何保证元素的唯一性

标签:hashset hashcode equals

原文地址:http://tracy123.blog.51cto.com/4345785/1411293

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!