![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 72
是南瓜吧
这个作者很懒,什么都没留下…
展开
-
浅谈ConcurrentHashMap(基于JDK1.8)
浅谈ConcurrentHashMap(基于JDK1.8)原理简介在JDK1.8的的升级中,ConcurrentHashMap沿用了HashMap的结构,使用了数组+链表+红黑树的结构,并且在1.8之后取消了1.7时的Segment数组加锁的形式,而是使用了CAS+Node数组加synchronized 锁的形式,粒度相较于1.7时更细,支持的并发成都更高在1.8之后key和value都不可以为null结构示意图ConcurrentHashMap在1.8的数据结构2.源码解析一些原创 2021-07-16 17:16:46 · 405 阅读 · 0 评论 -
浅谈ConcurrentHashMap(基于JDK1.7)
浅谈ConcurrentHashMap(基于JDK1.7)ConcurrentHashMap简介ConcurrentHashMap是Java并发包中提供的一个线程安全且高效的HashMap实现ConcurrentHashMap在并发编程的情况下使用率非常高相较于HashTable每次添加的重量级锁synchronized,锁的粒度更细1.7的ConcurrentHashMap的value是不支持为null的,这与添加是对值进行非空校验有关ConcurrentHashMap的数据结构原创 2021-07-15 16:46:28 · 221 阅读 · 0 评论 -
浅谈HashMap(基于JDK1.8)
浅析HashMap(基于JDK1.8)HashMap基于JDK1.8的类定义public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable基本原理HashMap是一个基于map实现的散列表,key允许为空值,但因为key不允许重复,所以只允许一个key为nullHashMap的查询和存储都是依赖于Hash算法在1.原创 2021-07-15 11:39:44 · 121 阅读 · 0 评论 -
浅谈HashMap(基于JDK1.7)
浅析HashMap(基于JDK1.7)HashMap基于JDK1.7的类定义public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, SerializableHashMap的数据结构HashMap才用的数据结构是数组+链表的组合方式为了解决hash冲突使用的是拉链法,即遇到hash冲突的时候通过在数组上挂载原创 2021-07-14 17:54:36 · 117 阅读 · 0 评论