putIfAbsent()
方法的语法是:
hashmap.putIfAbsent(K key, V value)
这里,
hashmap 是
HashMap
类的对象。
putIfAbsent() 参数
putIfAbsent()
方法有两个参数。
putAbsent() 返回值
返回与key关联的value,如果指定的key已经存在于hashmap中 返回 null,如果指定的 key 已经不存在于 hashmap 中
注意: 如果指定的键之前与空值相关联,则该方法也返回空值。
示例 1: Java HashMap putIfAbsent()
import java.util.HashMap; class Main { public static void main(String[] args){ // create a HashMap HashMap<Integer, String> languages = new HashMap<>(); // add mappings to HashMap languages.put(1, "Python"); languages.put(2, "C"); languages.put(3, "Java"); System.out.println("Languages: " + languages); // key already not present in HashMap languages.putIfAbsent(4, "JavaScript"); // key already present in HashMap languages.putIfAbsent(2, "Swift"); System.out.println("Updated Languages: " + languages); } }
输出
Languages: {1=Python, 2=C, 3=Java} Updated Languages: {1=Python, 2=C, 3=Java, 4=JavaScript}
在上面的例子中,我们创建了一个名为
languages 的 hashmap。注意这一行,
languages.putIfAbsent(4, "JavaScript");
此处,键
4 尚未与任何值关联。因此,
putifAbsent()
方法将映射
{4 = JavaScript} 添加到 hashmap。
注意这一行,
languages.putIfAbsent(2, "Swift");
这里,键
2 已经与值
Java 相关联。因此,
putIfAbsent()
方法不会将映射
{2 = Swift} 添加到哈希映射。
注意: 我们已经使用 put() 方法将单个映射添加到哈希映射。要了解更多信息,请访问 Java HashMap put()。