java map merge 怎么用
时间: 2023-09-02 12:13:13 浏览: 109
merge的用法
Java中的Map.merge()方法可以用于将一个键值对合并到一个Map中。该方法的语法如下:
```java
public V merge(K key, V value, BiFunction<? super V, ? super V, ? extends V> remappingFunction)
```
其中,key是要合并的键,value是要合并的值,remappingFunction是一个函数,用于指定如何合并相同键的值。
当指定的键在Map中不存在时,merge()方法将简单地将指定的键值对添加到Map中。当指定的键在Map中已存在时,merge()方法将使用指定的函数将新值和旧值合并到一起。
例如,下面的示例使用merge()方法将两个Map合并到一起:
```java
Map<String, Integer> map1 = new HashMap<>();
map1.put("a", 1);
map1.put("b", 2);
Map<String, Integer> map2 = new HashMap<>();
map2.put("b", 3);
map2.put("c", 4);
// 将map2合并到map1中
map2.forEach((key, value) -> {
map1.merge(key, value, Integer::sum);
});
System.out.println(map1); // 输出:{a=1, b=5, c=4}
```
在上面的示例中,map1和map2是两个Map对象,我们使用forEach()方法遍历map2中的所有键值对,并将它们合并到map1中。当合并相同键的值时,我们使用Integer::sum函数将新值和旧值相加。最终,map1中的键值对为{a=1, b=5, c=4}。
阅读全文