Example: Get key for a given value in HashMap
import java.util.HashMap;
import java.util.Map.Entry;
class Main {
public static void main(String[] args) {
// create a hashmap
HashMap<String, Integer> numbers = new HashMap<>();
numbers.put("One", 1);
numbers.put("Two", 2);
numbers.put("Three", 3);
System.out.println("HashMap: " + numbers);
// value whose key is to be searched
Integer value = 3;
// iterate each entry of hashmap
for(Entry<String, Integer> entry: numbers.entrySet()) {
// if give value is equal to value from entry
// print the corresponding key
if(entry.getValue() == value) {
System.out.println("The key for value " + value + " is " + entry.getKey());
break;
}
}
}
}
Output
HashMap: {One=1, Two=2, Three=3} The key for value 3 is Three
In the above example, we have created a hashmap named numbers. Here, we want to get the key for the value 3. Notice the line,
Entry<String, Integer> entry : numbers.entrySet()
Here, the entrySet() method returns a set view of all the entries.
- entry.getValue() - get value from the entry
- entry.getKey() - get key from the entry
Inside the if statement we check if the value from the entry is the same as the given value. And, for matching value, we get the corresponding key.