Java ConcurrentHashMap containsValue()方法
java.util.concurrent.ConcurrentHashMap.containsValue() 方法是Java中的一个内置函数,它接受一个值,如果一个或多个键被映射到指定的值,则返回true。这个方法会遍历整个哈希图。因此,它是一个比containsKey()方法慢得多的函数。
语法
chm.containsValue(Object val_element)
参数: 该方法接受一个对象类型的参数 val_element ,它将被检查是否被映射到Map中的任何键。
返回值: 如果指定的 val_element 被映射到该Map的任何键上,该方法返回true,否则返回false。
异常: 当指定的 value_element 为空时,该函数抛出NullPointerException。
下面的程序说明了 java.util.concurrent.ConcurrentHashMap.containsValue() 方法的使用。
程序1: 该程序涉及将整数值映射到字符串键。
/* Java Program to demonstrate containsValue()
method of ConcurrentHashMap */
import java.util.concurrent.*;
class ConcurrentHashMapDemo {
public static void main(String[] args)
{
ConcurrentHashMap<String, Integer> chm =
new ConcurrentHashMap<String, Integer>();
chm.put("Geeks", 120);
chm.put("for", 11);
chm.put("GeeksforGeeks", 15);
chm.put("Gfg", 50);
chm.put("GFG", 25);
// Check whether a key is mapped to 100
if (chm.containsValue(100)) {
System.out.println("100 is mapped.");
}
else {
System.out.println("100 is not mapped.");
}
// Check whether a key is mapped to 120
if (chm.containsValue(120)) {
System.out.println("120 is mapped.");
}
else {
System.out.println("120 is not mapped.");
}
}
}
输出。
100 is not mapped.
120 is mapped.
程序2: 该程序涉及将字符串值映射到整数键。
/* Java Program to demonstrate containsValue()
method of ConcurrentHashMap */
import java.util.concurrent.*;
class ConcurrentHashMapDemo {
public static void main(String[] args)
{
ConcurrentHashMap<Integer, String> chm =
new ConcurrentHashMap<Integer, String>();
chm.put(100, "Geeks");
chm.put(101, "for");
chm.put(102, "Geeks");
chm.put(103, "Gfg");
chm.put(104, "GFG");
// Check whether a key is mapped to Geeks
if (chm.containsValue("Geeks")) {
System.out.println("Geeks is mapped.");
}
else {
System.out.println("Geeks is not mapped.");
}
// Check whether a key is mapped to GfG
if (chm.containsValue("GfG")) {
System.out.println("GfG is mapped.");
}
else {
System.out.println("GfG is not mapped.");
}
}
}
输出。
Geeks is mapped.
GfG is not mapped.
参考资料 : https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ConcurrentHashMap.html#containsValue()