1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-16 18:10:13 +08:00

Update HashMap.md

This commit is contained in:
SnailClimb 2019-04-23 19:49:59 +08:00 committed by GitHub
parent ac77326729
commit be8db35292
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -235,7 +235,7 @@ HashMap只提供了put用于添加元素putVal方法只是给put方法调用
**对putVal方法添加元素的分析如下**
- ①如果定位到的数组位置没有元素 就直接插入。
- ②如果定位到的数组位置有元素就和要插入的key比较如果key相同就直接覆盖如果key不相同就判断p是否是一个树节点如果是就调用`e = ((TreeNode<K,V>)p).putTreeVal(this, tab, hash, key, value)`将元素添加进入。如果不是就遍历链表插入。
- ②如果定位到的数组位置有元素就和要插入的key比较如果key相同就直接覆盖如果key不相同就判断p是否是一个树节点如果是就调用`e = ((TreeNode<K,V>)p).putTreeVal(this, tab, hash, key, value)`将元素添加进入。如果不是就遍历链表插入(插入的是链表尾部)