Java HashMap containsValue()方法检查在哈希映射的一个或多个映射中是否存在指定的值。
containsValue()方法的语法为:
hashmap.containsValue(Object value)
value- value 存在于HashMap中的一个或多个映射中
如果存在指定值,则返回true
如果不存在指定值,则返回false
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, "Java"); languages.put(3, "JS"); System.out.println("HashMap" + languages); //检查值Java是否存在 if(languages.containsValue("Java")) { System.out.println("Java存在于列表中。"); } } }
输出结果
HashMap{1=Python, 2=Java, 3=JS} Java存在于列表中。
在上面的示例中,我们创建了一个名为languages的哈希映射。注意这些表达式,
languages.containsValue("Java") // 返回 true
在此,映射中存在指定值Java({2 = Java})。 因此,if代码块被执行,containsValue()方法将返回true和语句。
import java.util.HashMap; class Main { public static void main(String[] args){ // 创建 HashMap HashMap<String, String> countries = new HashMap<>(); //将映射添加到HashMap countries.put("Washington", "USA"); countries.put("Canberra", "Australia"); System.out.println("HashMap:\n" + countries); //检查值Spain是否存在 if(!countries.containsValue("Spain")) { //如果值不存在,则添加条目 countries.put("Madrid", "Spain"); } System.out.println("更新后的 HashMap:\n" + countries); } }
输出结果
HashMap: {Canberra=Australia, Washington=USA} 更新后的 HashMap: {Madrid=Spain, Canberra=Australia, Washington=USA}
在上面的示例中,请注意以下表达式:
if(!countries.containsValue("Spain")) {..}
在这里,我们使用了containsValue()方法来检查哈希映射中是否存在指定的值Spain。 由于我们使用了否定符号(!),因此如果该方法返回false,则将执行if块
因此,仅当哈希映射中没有为指定值的映射时,才添加新映射。
注意:我们还可以使用HashMap putIfAbsent()方法执行相同的任务。