HashMap流程图put方法
2019-12-30 09:43:25 2 举报
HashMap源码分析之put方法
作者其他创作
大纲/内容
否
红黑树插入
table.length<64
高16位低16位异或^
table[i] instanceof TreeNode
链表Node(冲突逻辑)
newNode尾部插入
newNode直接插入table
覆盖value
主干逻辑
table==null
++size>threshold
是
key相等
i=hash&(table.length-1)
遍历链表
链表转换为红黑树
结束
resize()初始化
扩容
key->hash
table[i]==null
resize()扩容重哈希
大于扩容阈值
开始
resize()扩容
红黑树TreeNode
红黑树
链表长度>=8
收藏
0 条评论
下一页