java集合之HashMap
- 环境:jdk8
前言
hashmap是非常常用的,深入了解还是很有好处的。对于hashmap或其他东西,了解一些关键和核心就能抓住要点,深入太多的其他细节,反而分散注意力,性价比反而不高。
对于HashMap,其关键点有这些:底层的数据结构是是什么?存储值的如何取值的?hash碰撞了怎么办?线程不安全会引发的问题?
hashmap在jdk7和jdk8中实现是不一样的。
- jdk7中,hashmap底层的数据结构数组+单链表
- jdk8中,hashmap底层的数据结构数组+单链表+红黑树
围绕以上的问题,开始对它进行剖析。
深入HashMap
Hashmap类图
参考
- https://tech.meituan.com/java-hashmap.html Java 8系列之重新认识HashMap