HashMap1.8
2023-07-25 09:40:37 6 举报
HashMap1.8
作者其他创作
大纲/内容
判断数组是否初始化
否
超过8个后会转换为红黑树
是
Node
判断该位置node的key是否与k相同
判断put完后是否需要扩容
put逻辑
计算hash
链表长度是否超过阈值
替换value
table(Node数组)
新建一个节点设置到该位置上
判断该位置的node是否是红黑树节点
扩容逻辑
执行到这说明是链表,遍历该链表,key相同则替换,若遍历完后没有相同的key,则添加到链表的尾部
判断下标处是否已经有Node
......
数组+链表+红黑树
初始化数组
插入到红黑树的逻辑
转换为红黑树逻辑
0 条评论
下一页