How to check if a key exists in a HashMap in Java Last Updated : 11 Dec, 2018 Comments Improve Suggest changes Like Article Like Report Given a HashMap and a key in Java, the task is to check if this key exists in the HashMap or not. Examples: Input: HashMap: {1=Geeks, 2=ForGeeks, 3=GeeksForGeeks}, key = 2 Output: true Input: HashMap: {1=G, 2=e, 3=e, 4=k, 5=s}, key = 10 Output: false Using Iterator (Not Efficient): Get the HashMap and the Key Create an iterator to iterate over the HashMap using HashMap.iterate() method. Iterate over the HashMap using the Iterator.hasNext() method. While iterating, check for the key at that iteration to be equal to the key specified. The entry key of the Map can be obtained with the help of entry.getKey() method. If the key matches, set the flag as true. The flag value after iterating, contains the result. Below is the implementation of the above approach: Program 1: Java // Java program to check if a key exists // in a HashMap or not import java.util.*; public class GFG { public static void main(String[] args) { // Create a HashMap HashMap<Integer, String> map = new HashMap<>(); // Populate the HashMap map.put(1, "Geeks"); map.put(2, "ForGeeks"); map.put(3, "GeeksForGeeks"); // Get the key to be removed int keyToBeChecked = 2; // Print the initial HashMap System.out.println("HashMap: " + map); // Get the iterator over the HashMap Iterator<Map.Entry<Integer, String> > iterator = map.entrySet().iterator(); // flag to store result boolean isKeyPresent = false; // Iterate over the HashMap while (iterator.hasNext()) { // Get the entry at this iteration Map.Entry<Integer, String> entry = iterator.next(); // Check if this key is the required key if (keyToBeChecked == entry.getKey()) { isKeyPresent = true; } } // Print the result System.out.println("Does key " + keyToBeChecked + " exists: " + isKeyPresent); } } Output: HashMap: {1=Geeks, 2=ForGeeks, 3=GeeksForGeeks} Does key 2 exists: true Program 2: To show why this method is not suggested. If the HashMap contains null values, then this method will throw NullPointerException. This makes this method a non suggestable method to use. Java // Java program to check if a key exists // in a HashMap or not import java.util.*; public class GFG { public static void main(String[] args) { try { // Create a HashMap HashMap<Integer, String> map = new HashMap<>(); // Populate the HashMap map.put(1, "Geeks"); map.put(2, "ForGeeks"); map.put(null, "GeeksForGeeks"); // Get the key to be removed int keyToBeChecked = 2; // Print the initial HashMap System.out.println("HashMap: " + map); // Get the iterator over the HashMap Iterator<Map.Entry<Integer, String> > iterator = map.entrySet().iterator(); // flag to store result boolean isKeyPresent = false; // Iterate over the HashMap while (iterator.hasNext()) { // Get the entry at this iteration Map.Entry<Integer, String> entry = iterator.next(); // Check if this key is the required key if (keyToBeChecked == entry.getKey()) { isKeyPresent = true; } } // Print the result System.out.println("Does key " + keyToBeChecked + " exists: " + isKeyPresent); } catch (Exception e) { System.out.println(e); } } } Output: HashMap: {null=GeeksForGeeks, 1=Geeks, 2=ForGeeks} java.lang.NullPointerException Using HashMap.containsKey method(Efficient): Get the HashMap and the Key Check if the key exists in the HashMap or not using HashMap.containsKey() method. If the key exists, set the flag as true. The flag value, contains the result. Below is the implementation of the above approach: Program 1: Java // Java program to check if a key exists // in a HashMap or not import java.util.*; public class GFG { public static void main(String[] args) { // Create a HashMap HashMap<Integer, String> map = new HashMap<>(); // Populate the HashMap map.put(1, "Geeks"); map.put(2, "ForGeeks"); map.put(null, "GeeksForGeeks"); // Get the key to be removed int keyToBeChecked = 2; // Print the initial HashMap System.out.println("HashMap: " + map); // Check is key exists in the Map boolean isKeyPresent = map.containsKey(keyToBeChecked); // Print the result System.out.println("Does key " + keyToBeChecked + " exists: " + isKeyPresent); } } Output: HashMap: {null=GeeksForGeeks, 1=Geeks, 2=ForGeeks} Does key 2 exists: true Comment More infoAdvertise with us Next Article How to check if a key exists in a HashMap in Java R RishabhPrabhu Follow Improve Article Tags : Java Java-Collections Java-HashMap Java-Map-Programs Practice Tags : JavaJava-Collections Similar Reads ConcurrentHashMap containsKey() Method in Java The containsKey() method in Java's ConcurrentHashMap class is used to determine whether the map contains a given key. It has the following signature: boolean containsKey(Object key) where: key is the key to be searched for in the map. The containsKey() method works in a concurrent environment, which 3 min read IdentityHashMap get() Method in Java The java.util.IdentityHashMap.get() method of IdentityHashMap class is used to retrieve or fetch the value mapped by a particular key mentioned in the parameter. It returns NULL when the map contains no such mapping for the key. Syntax: IdentityHashMap.get(Object key_element) Parameter: The method t 2 min read How to create a Java HashMap of user defined class type? Pre-requisite: Internal working of HashMap, HashMapIf we wish to create a HashMap of our own class, we need to ensure that the hashcode() of the key of HashMap doesn't change as if it happens then it is impossible to get the object value of the key from HashMap.On runtime, JVM processes hash code fo 3 min read ConcurrentHashMap containsValue() Method in Java The containsValue() method in Java's ConcurrentHashMap class is used to determine whether the map contains a given value. It has the following signature: boolean containsValue(Object value) where: value is the value to be searched for in the map.The containsValue() method works in a concurrent envir 3 min read HashMap entrySet() Method in Java The entrySet() method of the HashMap class in Java is used to create a set view of the mappings contained in the HashMap. This method allows us to iterate over the key-value pairs in the map or convert them into a set.Example 1: Here, we will use the entrySet() method to view the mappings in a HashM 2 min read Like