要实现相同键不覆盖的功能,可以使用MapputIfAbsent()方法。

putIfAbsent()方法会将指定的键值对放入Map中,但是只有在该键不存在时才会生效。如果键已经存在,则不会进行覆盖操作。

以下是一个示例代码:

Map<String, Object> map = new HashMap<>();
map.put("key1", new Object());

// 使用putIfAbsent()方法添加键值对,如果键已存在则不会进行覆盖
map.putIfAbsent("key1", new Object());
map.putIfAbsent("key2", new Object());

System.out.println(map.get("key1")); // 输出原始的值
System.out.println(map.get("key2")); // 输出新添加的值

输出结果:

java.lang.Object@12345678
java.lang.Object@abcdefgh

在上述示例中,putIfAbsent()方法被用来添加两个键值对。由于"key1"键已经存在,所以第一个putIfAbsent()方法不会进行覆盖操作,输出的值仍然是原来的对象。而"key2"键是新的,所以第二个putIfAbsent()方法会将新的值放入Map

现有一MAP集合 键为String类型 值为对象类型 如何put相同键不覆盖

原文地址: https://www.cveoy.top/t/topic/hXk2 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录