java merge map_Java HashMap merge()方法

Java HashMap merge()方法

java.util.HashMap.merge(K key, V value, BiFunction remappingFunction) 如果指定的键尚未与值关联或与null关联,请将其与给定的非null值关联。

1 语法

public V merge(K key, V value,BiFunction remappingFunction)

2 参数

key:这是我们具有特定价值的密钥。如果两个键的值相同,则将它们合并。

value:是与存储在存储桶中的特定键相对应的索引。

BiFunction:具有两个参数的函数,用于根据旧值和给定值计算新映射。

3 返回值

如果该键不存在或与null关联,则此方法返回键及其值。否则,如果键已经具有任何值,它将使用映射技术将旧值与新值合并。

4 示例

package com.yiidian;

/**

* 一点教程网: http://www.yiidian.com

*/

/**

* java.util.HashMap.merge(K key, V value, BiFunction remappingFunction) 方法的例子

*/

import java.util.*;

public class Demo {

public static void main(String args[]) {

// create a HashMap and add some values

HashMap

map1 = new HashMap<>();

map1.put(1, "L");

map1.put(2, "M");

map1.put(3, "N");

HashMap

map2 = new HashMap<>();

map2.put(1, "B");

map2.put(2, "G");

map2.put(3, "R");

// print map details

System.out.println("HashMap1: "

+ map1.toString());

System.out.println("HashMap2: "

+ map2.toString());

// provide value for new key which is absent

// using computeIfAbsent method

map2.forEach(

(key, value)

-> map1.merge(

key,

value,

(v1, v2)

-> v1.equalsIgnoreCase(v2)

? v1

: v1 + ", " + v2));

// print new mapping

System.out.println("New HashMap: " + map1);

}

}

输出结果为:

HashMap1: {1=L, 2=M, 3=N}

HashMap2: {1=B, 2=G, 3=R}

New HashMap: {1=L, B, 2=M, G, 3=N, R}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值