Java HashMap
2022/2/3 9:12:23
本文主要是介绍Java HashMap,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
HashMap
1. 构造器
1.1. HashMap()
构造一个默认初始容量(16)和默认加载因子(0.75)的HashMap
。
1.2 HashMap(int initialCapacity)
构造一个指定初始容量和默认加载因子(0.75)的HahMap
。
1.3 HashMap(int initialCapacity, float loadFactor)
2. 方法
2.1. size
public int size()
返回在map中的 key-value 数量。
2.2. isEmpty
public boolean isEmpty()
如果map中不包含key-value,则返回true
。
2.3. get
public V get (Object key)
返回指定key在map中对应的value,如果map中没有此key,返回null
。
2.4. ContainsKey
public boolean containsKey(Object key)
如果map中包含key值,返回true
。
2.5. put
public V put(K key, V value)
将指定key-value添加到map中,如果map中已经包含key值相关的映射,则替换旧value。
2.6. putAll
public void putAll(Map<? extends K,? extends V> m)
将指定map中的所有mappings复制到当前map中,如果当前map中已经存在指定map中的key,则会被替换。
2.7. Remove
public V remove(Object key)
如果map中存在指定key,则将其删除。
2.8. clear
public void clear()
删除map中的所有mappings。
2.9. containsValue
public boolean containsValue(Object value)
如果map中包含一个或者多个指定value的key-value,返回true
。
2.10. keySet
public Set<K> keySet()
返回map中所有key组成的的Set<K>
。
2.11 values
public Collection<V> values()
返回:a view of the values contained in this map。
2.12 entrySet
public Set<Map.Entry<K,V>> entrySet()
返回map中映射关系的set view。
2.13 computeIfAbsent
public V computeIfAbsent(K key, Function<? super K,? extends V> mappingFunction)
computeIfAbsent()
方法对 `hashMap 中指定 key 的值进行重新计算,如果不存在这个 key,则添加到 hashMap 中。
2.14 computeIfPresent
public V computeIfPresent(K key, BiFunction<? super K,? super V,? extends V> remappingFunction)
computeIfPresent() 方法对 hashMap 中指定 key 的值进行重新计算,前提是该 key 存在于 hashMap 中。
2.15 compute
2.16 merge
public V merge(K key, V value, BiFunction<? super V,? super V,? extends V> remappingFunction)
merge() 方法会先判断指定的 key 是否存在,如果不存在,则添加键值对到 hashMap 中。
2.17 clone
public Object clone()
clone() 方法用于复制一份 hashMap,属于浅拷贝。
拓展:
浅拷贝只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存, 所以如果其中一个对象改变了这个地址,就会影响到另一个对象。
浅拷贝对应的就是深拷贝,深拷贝是将一个对象从内存中完整的拷贝一份出来,从堆内存中开辟一个新的区域存放新对象,且修改新对象不会影响原对象。
这篇关于Java HashMap的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-09百万架构师第十二课:源码分析:Spring 源码分析:Spring系统概述及IOC实现原理|JavaGuide
- 2025-01-08如何用关键链方法突破项目管理瓶颈?
- 2025-01-08电商人必看!6 款提升团队协作与客户满意度软件!
- 2025-01-08电商团队管理混乱?快用这 6 款软件优化协作流程!
- 2025-01-08短剧制作效率低?试试这5款任务管理工具
- 2025-01-08高效应对电商高峰,6 款团队协作软件大揭秘!
- 2025-01-08为什么外贸人都爱上了在线协作工具?
- 2025-01-08提升工作效率,从这些任务管理工具开始
- 2025-01-08新年电商订单暴增,必备的 6 款可视化协作办公软件有哪些?
- 2025-01-08短剧制作经理必备技能与工具全解析