遍历concurrenthashmap
时间: 2023-12-09 19:37:08 浏览: 107
在Java中,遍历ConcurrentHashMap有以下几种方式:
1.使用ConcurrentHashMap的keySet()方法获取key的集合,然后遍历key集合,通过get()方法获取对应的value值。
```java
ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>();
// 添加元素
Set<String> keySet = map.keySet();
for (String key : keySet) {
Integer value = map.get(key);
System.out.println(key + " : " + value);
}
```
2.使用ConcurrentHashMap的entrySet()方法获取键值对的集合,然后遍历键值对集合,通过getKey()和getValue()方法获取对应的key和value值。
```java
ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>();
// 添加元素
Set<Map.Entry<String, Integer>> entrySet = map.entrySet();
for (Map.Entry<String, Integer> entry : entrySet) {
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println(key + " : " + value);
}
```
3.使用ConcurrentHashMap的forEach()方法遍历键值对集合,通过lambda表达式获取对应的key和value值。
```java
ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>();
// 添加元素
map.forEach((key, value) -> {
System.out.println(key + " : " + value);
});
```
4.使用ConcurrentHashMap的iterator()方法获取迭代器,然后遍历键值对集合,通过next()方法获取对应的key和value值。
```java
ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>();
// 添加元素
Iterator<Map.Entry<String, Integer>> iterator = map.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry<String, Integer> entry = iterator.next();
String key = entry.getKey();
Integer value = entry.getValue();
System.out.println(key + " : " + value);
}
```
阅读全文