hashmap底层putVal
时间: 2023-09-03 08:05:33 浏览: 126
HashMap底层的putVal方法是用于将键值对存储到HashMap中的方法。putVal方法的定义如下:
```
public V put(K key, V value) {
return putVal(hash(key), key, value, false, true);
}
```
在putVal方法中,首先会根据key的哈希值计算出对应的哈希桶的索引位置,然后在该索引位置的链表中进行查找,如果找到了相同的key,则会更新对应的value值。如果没有找到相同的key,则会创建一个新的Entry对象,并将其插入到链表的头部。如果链表长度达到了一定的阈值,就会触发扩容操作,将链表转换为红黑树结构,以提高查找效率。
在实例化一个HashMap时,可以看到map1并没有任何的属性,这是因为HashMap的属性是在运行时动态添加的,通过put方法向map1中添加键值对时,才会真正创建和存储数据。
综上所述,HashMap底层的putVal方法是用于将键值对存储到HashMap中的方法,通过计算哈希值和链表操作来实现键值对的插入和更新。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [hashmap底层代码解读 put](https://blog.csdn.net/zequal/article/details/115417734)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文