HashMap是数组+链表
1.HashMap不是线程安全,为什么不是线程安全的呢?
多线程put,多线程rehash
2.put的过程,通过key的hash值找到对应的数组元素,然后插入对应的链表尾部。
3.get的过程,根据key的hash找到对应的数组元素,然后根据equal找到链表中对应的元素。
4.rehash过程:
e.hash & (newCap - 1)
HashMap是数组+链表
1.HashMap不是线程安全,为什么不是线程安全的呢?
多线程put,多线程rehash
2.put的过程,通过key的hash值找到对应的数组元素,然后插入对应的链表尾部。
3.get的过程,根据key的hash找到对应的数组元素,然后根据equal找到链表中对应的元素。
4.rehash过程:
e.hash & (newCap - 1)
本文标题:HashMap相关
本文链接:https://www.haomeiwen.com/subject/dbevwftx.html
网友评论