Creating a Map with Reverse View and Lookup in Java

In a Map we can lookup for a value by using a distinct key. In a Map with reverse view and lookup, even the values are distinct. So there is one to one mapping between keys and values and vice version.

If we enable this constraint on a Map then we can look up a key by its value. Such data structure is called bi directional map.

There is no built data structure similar to reverse lookup Map in JDK.

But Apache Common Collections and Guava libraries provide implementation of bidirectional map. It is called BidiMap and BiMap. Both of these data structure enforce the constraint of one to one mapping between keys and values.



You May Interest

How Strategy Design Pattern is Different From State Design Patter ...

Why Should You Define a Default Constructor in Java ?

When Does JVM Call the Finalize Method in Java ?

What is Template Method Design Pattern in Java ?

Why Do You Use Upcasting or Downcasting in Java ?