![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java容器源码分析
Serendipity°
在校学渣一枚
展开
-
TreeMap
文章目录一、顶部注释分析1.1 首句分析1.2 从注释中得到的结论二、源码分析2.1 定义2.2 字段2.3 构造方法2.4 put 操作2.5 get 操作2.6 remove 操作2.7 entrySet三、与HashMap对比 一、顶部注释分析 1.1 首句分析 A Red-Black tree based NavigableMap implementation. The map is s...原创 2019-04-11 15:27:38 · 262 阅读 · 0 评论 -
HashMap
文章目录一、顶部注释分析1.1 数据结构1.2 从注释中得到的结论二、源码分析2.1 定义2.2 字段2.3 Node静态内部类2.4 构造方法2.5 threshold 赋值2.6 hash值计算2.6.1 计算方式2.6.2 计算原理2.7 resize 扩容2.8 put 操作2.8.1 put 方法2.8.2 putVal 方法2.9 get 操作2.9.1 get 方法2.9.2 get...原创 2019-04-09 21:36:01 · 456 阅读 · 0 评论 -
LinkedList
文章目录一、顶部注释分析1.1 首句定义1.2 从注释中得到的结论二、源码分析2.1 定义2.2 字段2.3 构造方法2.4 添加元素2.5 get、set、remove2.6 队列操作(添加、删除、获取)2.7 栈操作(入栈、出栈、获取栈顶) 一、顶部注释分析 1.1 首句定义 Doubly-linked list implementation of the List and Deque in...原创 2019-04-09 21:34:20 · 96 阅读 · 0 评论 -
Vector
文章目录一、顶部注释分析二、源码分析2.1 定义2.2 字段2.3 构造方法2.4 常用方法2.5 扩容 一、顶部注释分析 Vector是一个 growable 的数组,它的大小可以根据需要增加或减少 Vector is synchronized. If a thread-safe implementation is not needed, it is recommended to use Ar...原创 2019-04-09 21:33:02 · 187 阅读 · 0 评论 -
ArrayList
文章目录一、 顶部注释分析1.1 首句定义1.2 从注释中得到的结论二、源码分析2.1 定义2.2 字段2.3 构造方法2.4 添加元素2.5 容量检查和扩容2.6 get、set、remove、trimToSize2.7 modCount 一、 顶部注释分析 1.1 首句定义 Resizable-array implementation of the List interface:List 接...原创 2019-04-09 21:30:14 · 97 阅读 · 0 评论 -
LinkedHashSet
文章目录一、顶部注释分析1.1 从注释中得到的结论二、源码分析2.1 定义2.2 构造方法 一、顶部注释分析 1.1 从注释中得到的结论 Hash table and linked list implementation of the Set interface:基于哈希表和链表的 Set 实现 LinkedHashSet 底层实际上就是 LinkedHashMap LinkedHashSet ...原创 2019-04-11 15:29:38 · 193 阅读 · 0 评论 -
HashSet
文章目录一、顶部注释分析1.1 从注释中得到的结论二、源码分析2.1 定义2.2 字段2.3 构造方法2.3.1 常规构造方法2.3.2 特殊构造方法 一、顶部注释分析 1.1 从注释中得到的结论 This class implements the Set interface, backed by a hash table (actually a HashMap instance):该类实现了 ...原创 2019-04-11 15:29:15 · 1115 阅读 · 0 评论 -
TreeSet
文章目录一、顶部注释分析1.1 从注释中得到的结论二、源码分析2.1 定义2.2 字段2.3 构造方法 一、顶部注释分析 1.1 从注释中得到的结论 A NavigableSet implementation based on a TreeMap:基于 TreeMap 的 NavigableSet 实现 HashSet 底层实际上是一个 NavigableMap 接口类型的实例,如 TreeMa...原创 2019-04-11 15:28:47 · 120 阅读 · 0 评论 -
ConcurrentHashMap
文章目录一、顶部注释分析1.1 数据结构1.1.1 JDK1.7实现1.1.2 JDK1.8实现1.2 从注释中得到的结论二、源码分析2.1 定义2.2 字段2.3 Node静态内部类2.4 构造方法2.5 put 操作2.5.1 put 方法大致步骤2.5.2 初始化 table 数组2.6 get 操作 一、顶部注释分析 1.1 数据结构 1.1.1 JDK1.7实现 在 JDK1.7中,C...原创 2019-04-11 15:28:17 · 123 阅读 · 0 评论 -
LinkedHashMap
文章目录一、顶部注释分析1.1 数据结构1.2 从注释中得到的结论二、源码分析2.1 定义2.2 字段2.3 Entry 静态内部类2.4 构造方法2.5 迭代方式 accessOrder 的含义2.6 常用操作2.6.1 put2.6.2 get2.6.3 remove2.7 回调函数2.8 entrySet 一、顶部注释分析 1.1 数据结构 1.2 从注释中得到的结论 LinkedHas...原创 2019-04-09 21:36:33 · 461 阅读 · 0 评论