HashSet

Hashset的实现原理:

Hashset底部是哈希表支持的,存取速度快

        往hashset添加元素的时候,Hashset会先调用元素的HashCode方法得到元素的哈希值,然后通过元素的哈希值经过移位等运算,就可以算出该元素在哈希表中的位置。

算出存储位置之后,分两种情况:

        第一种情况:如果算出元素的存储位置目前没有任何元素存储·那么该元素可以直接存储到该位置上。

        第二种情况:如果算出该元素的存储位置目前已经存在有其他元素了,那么会调用该元素的equals方法与该位置上的元素进行比较,如果equals返回的是true,那么该元素与这个位置上的元素就视为重复元素,不允许添加,如果equals返回的是false,那么该元素进行添加。

哈希表的其中一个特点:桶式结构(即一个表格里面可以放多个元素)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容