![](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 · 394 阅读 · 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 · 215 阅读 · 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为null HashMap的查询和存储都是依赖于Hash算法 在1.原创 2021-07-15 11:39:44 · 119 阅读 · 0 评论 -
浅谈HashMap(基于JDK1.7)
浅析HashMap(基于JDK1.7) HashMap基于JDK1.7的类定义 public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable HashMap的数据结构 HashMap才用的数据结构是数组+链表的组合方式 为了解决hash冲突使用的是拉链法,即遇到hash冲突的时候通过在数组上挂载原创 2021-07-14 17:54:36 · 111 阅读 · 0 评论