Java HashMap putIfAbsent() 方法
putIfAbsent()
方法的语法是:
hashmap.putIfAbsent(K key, V value)
这里,hashmap
是 HashMap
类的一个对象。
putIfAbsent() 方法的参数
putIfAbsent()
方法接受两个参数。
- key - 指定的
value
与此key
相关联 - value - 指定的
key
与此value
相映射
putAbsent() 方法的返回值
- 如果指定的
key
已存在于 hashmap 中,返回与key
相关联的value
- 如果指定的
key
未存在于 hashmap 中,返回null
注意:如果指定的 key
之前已与一个 null 值 相关联,那么方法也返回 null
。
示例 1:Java HashMap putIfAbsent()
import java.util.HashMap;
class Main {
public static void main(String[] args){
// 创建一个 HashMap
HashMap<Integer, String> languages = new HashMap<>();
// 向 HashMap 添加映射
languages.put(1, "Python");
languages.put(2, "C");
languages.put(3, "Java");
System.out.println("语言: " + languages);
// 在 HashMap 中之前未存在的键
languages.putIfAbsent(4, "JavaScript");
// 在 HashMap 中已存在的键
languages.putIfAbsent(2, "Swift");
System.out.println("更新后的语言: " + languages);
}
}
输出
语言: {1=Python, 2=C, 3=Java}
更新后的语言: {1=Python, 2=C, 3=Java, 4=JavaScript}
在上述示例中,我们创建了一个名为 languages
的 hashmap。注意这行代码,
languages.putIfAbsent(4, "JavaScript");
这里,键 4
之前未与任何值关联。因此,putIfAbsent()
方法将映射 {4 = JavaScript}
添加到了 hashmap。
注意这行代码,
languages.putIfAbsent(2, "Swift");
这里,键 2
已与值 C
关联。因此,putIfAbsent()
方法不会将映射 {2 = Swift}
添 加到 hashmap。
注意:我们已经使用 put()
方法添加了单个映射到 hashmap。要了解更多,请访问 Java HashMap put()。