彬子的Blog
博客
分类
标签
归档
关于
博客
分类
标签
归档
关于
Volantis
项目
笔记
专栏
博客
社区
源码
ConcurrentHashMap底层原理
ConcurrentHashMap底层原理 jdk1.7是数组加链表,它在对象中保存了一个Segment数组。每个Segment元素类似于一个Hashtable;这样,在执行put操作时首先根据hash算法定位到元素属于哪个Segment,然后对该Segment加锁即可,不同的Segment可以并发put。而Segment的锁实现其实是ReentrantLock jdk1.8则是采用了数组+...
2026-04-07
Java
Java
Java
并发
集合
Java
集合
并发
阅读全文
HashMap
HashMap JDK 7 中 HashMap 的数据结构是数组+链表。 JDK 8 中 HashMap 的数据结构是数组+链表+红黑树。 它在链表长度大于8且数组长度大于64时候会把链表转换成红黑树 HashMap 的初始容量是 16,随着元素的不断添加,HashMap 就需要进行扩容,阈值是capacity * loadFactor,capacity 为容量,loadFactor 为负...
2026-04-07
Java
Java
HashMap
Java
集合
Java
集合
HashMap
阅读全文