HashMap中put方法
时间: 2024-02-09 07:41:26 浏览: 82
HashMap之put方法源码解读.docx
put方法是HashMap类中的一个方法,用于向HashMap中添加键值对。其方法签名如下:
```java
public V put(K key, V value)
```
其中,key表示要添加的键,value表示要添加的值。该方法返回值为V类型,表示添加前该键对应的值,如果该键不存在,则返回null。
具体实现如下:
1. 首先根据key的hashCode计算它在数组中的位置,如果该位置已经有元素,则会发生冲突。
2. 如果冲突了,就会从该位置开始,遍历数组中的元素,找到第一个与key相等的元素。
3. 如果找到了相等的元素,就用新的value替换旧的value,并返回旧的value。
4. 如果没有找到相等的元素,就新建一个Entry对象,将其放到该位置上,并返回null。
注意,如果数组中的元素数量超过了负载因子乘以数组长度,就会对数组进行扩容。具体扩容的过程可以看这篇文章:https://www.jianshu.com/p/7d8c8a7b6d55
阅读全文