如何检查 LinkedHashMap 是否包含Java中的值?
LinkedHashMap是Java中的一个预定义类,类似于HashMap,与HashMap不同,包含key及其各自的值,在LinkedHashMap中保留插入顺序。任务是检查 LinkedHashMap 是否包含Java中的任何值。为了检查我们必须遍历我们的 LinkedHashMap,如果我们得到任何值,我们将返回 true。
示例:
Input : Key- 2 : Value-6
Key- 4 : Value-1
Key- 5 : Value-10
value to check - 2
Output : False
Input : Key- 1 : Value-15
Key- 3 : Value-12
Key- 5 : Value-9
Key- 6 : Value-11
Value to check - 11
Output : True
方法一:(使用 entrySet() 方法)
使用 For-each 循环遍历 LinkedHashMap。创建 check()函数以判断 LinkedHasMap 或 nor 中是否存在任何值。遍历 LinkedHashMap 如果我们得到任何值返回 true 否则返回 false。
伪代码:
for (Map.Entry it : lhm.entrySet()) {
if (it.getValue() != null)
return true;
}
句法:
linked_hash_map.entrySet()
参数:该方法不带任何参数。
返回值:该方法返回一个与 LinkedHashMap 具有相同元素的集合。
例子:
Java
// Java program to check if LinkedHashMap contains a
// particular value
import java.util.*;
import java.io.*;
class GFG {
public static boolean
check(LinkedHashMap lhm, int value)
{
// iterate the map and find
for (Map.Entry it :
lhm.entrySet()) {
if (it.getValue() == value)
return true;
}
return false;
}
public static void main(String[] args)
{
// create a linked Hashmap
LinkedHashMap LHM
= new LinkedHashMap<>();
// add elements
LHM.put(2, 6);
LHM.put(4, 1);
LHM.put(5, 10);
int value = 2;
// check if has a value 2
if (check(LHM, value))
System.out.println("True");
else
System.out.println("False");
}
}
Java
// Java program to check if LinkedHashMap contains a
// particular value
import java.util.*;
import java.io.*;
class GFG {
public static void main(String[] args)
{
// create a linked hashmap
LinkedHashMap LHM
= new LinkedHashMap<>();
// add mappings
LHM.put(2, 6);
LHM.put(4, 1);
LHM.put(5, 10);
int value = 2;
// check if it has a value
if (LHM.containsValue(value))
System.out.println("True");
else
System.out.println("False");
}
}
False
时间复杂度:O(n)。
方法二:(使用 containsValue() 方法)
这种方法是解决我们问题的最佳方法。在上述方法中,我们遍历 LinkedHashMap。在这种方法中,我们直接使用我们的预定义函数来检查我们的值。
算法
Use the function containValue() to find if our value is present or not in our LinkedHashMap.
Psuedo Code:
LHM.containsValue(val)
Here,
Val is value to check.
LHM is name of our LinkedHashMap.
句法:
Linked_Hash_Map.containsValue(Object Value)
参数:该方法只接受一个 Object 类型的参数Value ,并引用映射应该由映射内的任何键检查其映射的值。
返回值:如果检测到值的映射,则该方法返回布尔值 true,否则返回 false。
例子:
Java
// Java program to check if LinkedHashMap contains a
// particular value
import java.util.*;
import java.io.*;
class GFG {
public static void main(String[] args)
{
// create a linked hashmap
LinkedHashMap LHM
= new LinkedHashMap<>();
// add mappings
LHM.put(2, 6);
LHM.put(4, 1);
LHM.put(5, 10);
int value = 2;
// check if it has a value
if (LHM.containsValue(value))
System.out.println("True");
else
System.out.println("False");
}
}
False
时间复杂度: O(1)。