Check if a particular value exists in Java LinkedHashMap



LinkedHashMap is a class in Java that implements the Map interface. It uses a doubly linked list to maintain the insertion order of elements. So, when we loop through a LinkedHashMap, the elements will be returned in the order we had inserted them.

The given task is to check if a particular value exists in a LinkedHashMap in Java. Let's look at some scenarios to understand the problem better:

Scenario

Input: {1=Mikasa, 2=Eren, 3=Reiner}, Value to check: Mikasa
Output: Value Exists
Explanation: The LinkedHashMap has the value that we are looking for.

Checking if a Value Exists in LinkedHashMap

The following are the ways we can check if a particular value exists in a LinkedHashMap in Java:

Using containsValue() Method

The containsValue() method is from the Map interface, which is implemented by the LinkedHashMap class. This method is used to check if a particular value exists in the LinkedHashMap. If the value exists, it returns TRUE; otherwise, it returns FALSE.

Syntax

Following is the syntax of the containsValue() method:

map.containsValue(value);

The following are the parameters:

  • map is the object we create of the LinkedHashMap class
  • value is the value we want to check.

Example

In the following example, we are searching for a particular value in a LinkedHashMap  using the containsValue() method:

import java.util.LinkedHashMap;
public class CheckIfValueExists {
   public static void main(String[] args){

      LinkedHashMap<Integer, String> map = new LinkedHashMap<>();

      map.put(1, "Kisaki");
      map.put(2, "Takemichi");
      map.put(3, "Mikey");
      map.put(4, "Draken");

      String valueToCheck = "Mikey";
      if(map.containsValue(valueToCheck)) {
         System.out.println("Value exists in the LinkedHashMap" + " and that is: " + valueToCheck);
      } else {
         System.out.println("Value does not exist in the LinkedHashMap");
      }
   }
}

When you run the above code, it will produce the following output:

Value exists in the LinkedHashMap and it is: Mikey

Using entrySet() Method

The entrySet() is another method from the Map Interface. This method returns a Set view (set of key-value pairs) of the mappings in the LinkedHashMap. We can get the set view and then use the contains() method of the Set interface to check if a particular value exists in the LinkedHashMap.

Syntax

map.entrySet();

The following are the parameters of this function:

  • map is the object we create of the LinkedHashMap class
  • entrySet is the set view of the mappings in the LinkedHashMap.

Example

In the following example, we are retrieving the SetView object of a LinkedHashMap, comparing the value of each key in it with the key we are searching for:

import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
public class CheckIfValueExists {
   public static void main(String[] args){

      LinkedHashMap<Integer, Integer> map = new LinkedHashMap<>();
      map.put(1, 2);
      map.put(2, 3);
      map.put(3, 4);
      map.put(4, 5);
    
      int valueToCheck = 3;
      int key = 2;
      Set<Map.Entry<Integer, Integer>> entrySet = map.entrySet();

      boolean exists = false;
      for(Map.Entry<Integer, Integer> entry : entrySet) {
         if(entry.getValue() == valueToCheck) {
            exists = true;
            key = entry.getKey();
            break;
         }
      }

      if(exists) {
         System.out.println("The value " + valueToCheck + " exists in the LinkedHashMap with key: " + key);
      } else {
         System.out.println("Value does not exist in the LinkedHashMap");
      }
   }
}

When you run the above code, it will produce the following output:

The value 3 exists in the LinkedHashMap with key: 2

Using Stream API

Stream API in Java allows us to perform functional-style operations on collections. Functional-style uses lambda expressions to process data. We have methods in the Stream API, and we can chain them together to get the result. You can search for a value in a LinkedHashMap using the streams API as shown below:

map.entrySet().stream().anyMatch(entry -> entry.getKey().equals(key) && !entry.getValue());

Let's break down the above snippet:

  • map is the object we create of the LinkedHashMap class
  • entrySet() returns a set view of the mappings contained in the map, as we saw in the previous section.
  • stream() converts the set view to a Stream.
  • anyMatch() is a terminal operation that returns true if any elements of the stream match the provided predicate.
  • entry is a Map.Entry object that represents a key-value pair in the map.
  • entry.getKey() returns the key of the entry.
  • entry.getValue() returns the value of the entry.

Example

In the below example, first we will create a LinkedHashMap of String and Boolean, where each key is the name of a person and the value is a boolean indicating whether that person is available or not.

  • Next, we will make a stream of the map entries using the entrySet().stream() method.
  • Then we will use the anyMatch() method to check if the specified person exists in the map and is available (i.e., the value is true).
  • Then we will print the result based on the value of the boolean variable.
import java.util.LinkedHashMap;
public class CheckIfValueExists {
   public static void main(String[] args){
      LinkedHashMap<String, Boolean> map = new LinkedHashMap<>();

      map.put("Zoro", false);
      map.put("Luffy", true);
      map.put("Nami", true);
      map.put("Ussop", false);
      map.put("Sanji", true);

      String key = "Nami";

      // Check if the person is in the map and is not available
      boolean isAvailable = map.entrySet().stream()
         .anyMatch(entry -> entry.getKey().equals(key) && entry.getValue());

      if(isAvailable) {
         System.out.println(key + " is available.");
      } else {
         System.out.println(key + " is not available.");
      }
   }
}

When you run the above code, it will produce the following output:

Nami is available.
Aishwarya Naglot
Aishwarya Naglot

Writing clean code… when the bugs aren’t looking.

Updated on: 2025-07-28T14:20:51+05:30

549 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements