Java – 集合Set – LinkedHashSet链表集合
简介
LinkedHashSet是HashSet的子类,包含HashSet的功能,且LinkedHashSet是有序、不重复、无索引的集合。
创建LinkedHashSet
详细阅读HashSet文章
简介
HashSet集合是Set集合下的子类,为无序、不重复、无索引的集合
HashCode 相关
在讲解H……
LinkedHashSet底层原理
LinkedHashSet 的有序指的是保证存储和取出的元素顺序一致
LinkedHashSet底层依然采用哈希表,只是每个元素又额外的多了一个双链表的机制记录存储的顺序。
执行原理
1.当第一位成员被添加进来时,依然会使用哈希表计算存储在数组中的索引位置,并设定双链表,设定头节点内存为null
2.当第二位成员被添加进来时,会记录上一位成员的内存地址到头地址中,同时也把自己的地址记录在上一位成员的尾地址中。
3.成员进来时依然会使用equlas判断成员是否相同,如果是则丢弃不存。
(双链表具有头尾两个内存地址用于记录上一个节点和下一个节点的成员地址,详细请查看双链表文章)
THE END
0
二维码
打赏
海报
Java – 集合Set – LinkedHashSet链表集合
简介
LinkedHashSet是HashSet的子类,包含HashSet的功能,且LinkedHashSet是有序、不重复、无索引的集合。
创建LinkedHashSet
详细阅读HashSet文章
……
TZMing花园 - 软件分享与学习
共有 0 条评论