merge java方法_Java HashMap merge() 方法
时间: 2024-03-14 12:44:00 浏览: 16
Java中的HashMap类提供了一个merge()方法,用于将指定键的值与该键的现有值合并。如果指定键不存在,则将指定键和值添加到映射中。该方法的语法如下:
```java
public V merge(K key, V value, BiFunction<? super V,? super V,? extends V> remappingFunction)
```
其中,key表示要合并的键,value表示要合并的值,remappingFunction表示合并函数,用于处理现有值和合并值的冲突。如果remappingFunction返回null,则将删除该键。
下面是一个示例代码:
```java
HashMap<String, Integer> map = new HashMap<>();
map.put("A", 1);
map.put("B", 2);
map.put("C", null);
map.merge("A", 10, (oldValue, newValue) -> oldValue + newValue);
map.merge("B", 5, (oldValue, newValue) -> oldValue + newValue);
map.merge("C", 2, (oldValue, newValue) -> oldValue + newValue);
System.out.println(map);
```
输出结果为:
```
{A=11, B=7, C=2}
```
在上面的示例中,我们将键"A"的值与10合并,将键"B"的值与5合并,将键"C"的值与2合并。由于键"A"和"B"的现有值不为空,所以我们可以使用合并函数将它们的值相加。而键"C"的现有值为空,所以我们只需将新值添加到映射中即可。