HashMap 原理
2020-08-17 22:00:17 0 举报
HashMap put 流程图
作者其他创作
大纲/内容
table 是否为空or length=0
是
table[i]是否为treeNode
否
红黑树
开始遍历链表准备插入
链表插入,若key存在直接覆盖value
End
链表长度是否大于8
红黑树直接插入键值对
扩容
直接覆盖value
table[i] == null
直接插入
根据键值key计算hash值得到插入的数组索引
链表
转换红黑树,插入键值对
Start
resize - 扩容
key是否存在
++size>threshold
计算索引、逻辑判断
0 条评论
下一页