本文主要是介绍Java重修笔记 第四十五天 LinkedHashSet 类,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
-
LinkedHashSet 类
1. LinkedHashSet 是 HashSet 的子类,继承 HashSet 的方法
2. LinkedHashSet 的底层是 LinkedHashMap ,底层维护了一个数组加双向链表的组合
3. LinkedHashSet 根据元素的 hashCode 值来决定元素在 table 数组上的存储位置,同时使用链表结构来维护元素的次序(after 引用指向下一个插入的结点,而 before 引用指向上一个插入的结点),这使得元素添加顺序和取出顺序是一样的。
4. LinkedHashSet 不允许添加重复的元素
5. LinkedHashSet 数组是 HashMap$Node[] ,但里面实际存放的类型为 LinkedHashMap$Entry,它俩是继承关系
6. 其扩容逻辑和树化逻辑和 HashSet 一样,因为都是调用相同的方法
这篇关于Java重修笔记 第四十五天 LinkedHashSet 类的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!