- 博客(1)
- 收藏
- 关注
原创 理论上,HashMap的链表是有可能性超过8的,比如长度为9
如果现在有一个数组长度为16的HashMap,连续放入8的key-value键值对,根据hash算法(n - 1) & hash求出索引下标值,假设这8个元素都放在同一个下标位置,产生了链表,其本质上是这8个key的hash值的低四位是一样的,这理论上是有可能的,但实际上很难出现。因此,在HashMap中链表长度不会超过8,这种可能性并不是绝对的。在jdk8之前,HashMap的数据结构还是以数组加链表的方式存储,到8之后呢,由于链表需要迭代查询,链表就需要转红黑树,从而实现时间复杂度上的提升。
2024-03-03 13:58:26 971 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人