containsValue()
方法的语法是
hashmap.containsValue(Object value)
containsValue() 参数
containsValue()
方法接受一个参数。
- value - value 出现在
HashMap
的一个或多个映射中
containsValue() 返回值
- 如果存在指定的 value,则返回
true
- 如果指定的 value 不存在,则返回
false
示例 1:Java HashMap containsValue()
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, "Java");
languages.put(3, "JS");
System.out.println("HashMap" + languages);
// check if value Java is present
if(languages.containsValue("Java")) {
System.out.println("Java is present on the list.");
}
}
}
输出
HashMap{1=Python, 2=Java, 3=JS} Java is present on the list.
在上面的示例中,我们创建了一个名为 languages 的哈希映射。请注意这些表达式,
languages.containsValue("Java") // returns true
这里,指定的 Java 值存在于映射({2=Java}
)中。因此,containsValue()
方法返回 true
,并且 if 块内的语句被执行。
示例 2:如果值不存在,则向 HashMap 添加条目
import java.util.HashMap;
class Main {
public static void main(String[] args){
// create a HashMap
HashMap<String, String> countries = new HashMap<>();
// add mappings to HashMap
countries.put("Washington", "USA");
countries.put("Canberra", "Australia");
System.out.println("HashMap:\n" + countries);
// check if the value Spain is present
if(!countries.containsValue("Spain")) {
// add entry if Value already not present
countries.put("Madrid", "Spain");
}
System.out.println("Updated HashMap:\n" + countries);
}
}
输出
HashMap: {Canberra=Australia, Washington=USA} Updated HashMap: {Madrid=Spain, Canberra=Australia, Washington=USA}
在上面的示例中,请注意表达式,
if(!countries.containsValue("Spain")) {..}
在这里,我们使用 containsValue()
方法来检查指定的 Spain 值是否存在于哈希映射中。由于我们使用了否定符号 !
,如果该方法返回 false
,则执行 if
块。
因此,仅当哈希映射中不存在指定 value 的映射时,才会添加新的映射。
注意:我们也可以使用 HashMap putIfAbsent() 方法来执行相同的任务。