ConcurrentHashMap是Java中的一个线程安全的哈希表,它支持并发访问,提供了更高的性能和更低的延迟。
ConcurrentHashMap是Java中一个非常常用的线程安全的哈希表实现,它提供了高效的并发性能,在本文中,我们将介绍ConcurrentHashMap的一些常用方法,帮助你更好地理解和使用这个类。
创建ConcurrentHashMap实例
1、无参构造方法:创建一个默认初始容量为16,负载因子为0.75的ConcurrentHashMap实例。
ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>();
2、通过指定初始容量创建实例:创建一个指定初始容量的ConcurrentHashMap实例。
int initialCapacity = 16; ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>(initialCapacity);
3、通过指定初始容量和负载因子创建实例:创建一个指定初始容量和负载因子的ConcurrentHashMap实例。
int initialCapacity = 16; float loadFactor = 0.75f; ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>(initialCapacity, loadFactor);
常用方法介绍
1、put(K key, V value):向ConcurrentHashMap中添加键值对,如果键已经存在,则更新对应的值,此方法是线程安全的。
map.put("one", 1); map.put("two", 2);
2、get(Object key):根据键从ConcurrentHashMap中获取对应的值,如果键不存在,返回null,此方法是线程安全的。
Integer value1 = map.get("one"); // value1 = 1 Integer value2 = map.get("three"); // value2 = null
3、remove(Object key):根据键从ConcurrentHashMap中删除对应的键值对,如果键不存在,不执行任何操作,此方法是线程安全的。
map.remove("one"); // 删除键为"one"的键值对
4、containsKey(Object key):判断ConcurrentHashMap中是否包含指定的键,如果包含,返回true;否则,返回false,此方法是线程安全的。
boolean containsKey = map.containsKey("one"); // containsKey = true
5、containsValue(Object value):判断ConcurrentHashMap中是否包含指定的值,如果包含,返回true;否则,返回false,此方法是线程安全的。
boolean containsValue = map.containsValue(1); // containsValue = true
6、size():获取ConcurrentHashMap中键值对的数量,此方法是线程安全的。
int size = map.size(); // size = 2
7、isEmpty():判断ConcurrentHashMap是否为空,如果为空,返回true;否则,返回false,此方法是线程安全的。
boolean isEmpty = map.isEmpty(); // isEmpty = false
8、clear():清空ConcurrentHashMap中的所有键值对,此方法是线程安全的。
map.clear(); // 清空所有键值对
9、toString():将ConcurrentHashMap转换为字符串表示形式,包括所有的键值对信息,此方法不是线程安全的。
String str = map.toString(); // "{one=1, two=2}"
本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/477931.html
如有侵犯您的合法权益请发邮件951076433@qq.com联系删除