Hash Map
The Map interface maps unique keys to value means it associate value to unique keys which you use to retrieve value at a later date. Some of the key points are :
- Using a key and a value, you can store the value in Map object. You can retrieve it later by using it's key.
- When no element exists in the invoking Map, many methods throw a 'NoSuchElementException'.
- A ClassCastException is thrown when an object is incompatible with the elements in a map.
- A NullPointerException is thrown if an attempt is made to use a null object and null is not allowed in the map.
- An UnsupportedOperationException is thrown when an attempt is made to change an unmodifiable map.
Declaration
HashMap<String, Object> map = new HashMap<String, Object>();
Map<String, Object> map = new HashMap<String, Object>();
- The difference between the above two declaration is the interface they implement.
- The advantage of using Map<String, Object> is that you can substitute the underlying implementation without any code compatibility problem. But this is not possible in the case of HashMap<String, Object>.
| Methods | Description |
| void clear( ) | Removes all key/value pairs from the invoking map. |
| boolean containsKey(Object k) | Returns true if the invoking map contains k as a key. Otherwise, returns false. |
| boolean containsValue(Object v) | Returns true if the map contains v as a value. Otherwise, returns false. |
| Set entrySet( ) | Returns a Set that contains the entries in the map. The set contains objects of type Map.Entry. This method provides a set-view of the invoking map. |
| boolean equals(Object obj) | Returns true if obj is a Map and contains the same entries. Otherwise, returns false. |
| Object get(Object k) | Returns the value associated with the key k. |
| int hashCode( ) | Returns the hash code for the invoking map. |
| boolean isEmpty( ) | Returns true if the invoking map is empty. Otherwise, returns false. |
| Set keySet( ) | Returns a Set that contains the keys in the invoking map. This method provides a set-view of the keys in the invoking map. |
| Object put(Object k, Object v) | Puts an entry in the invoking map, overwriting any previous value associated with the key. The key and value are k and v, respectively. Returns null if the key did not already exist. Otherwise, the previous value linked to the key is returned. |
| void putAll(Map m) | Puts all the entries from m into this map. |
| Object remove(Object k) | Removes the entry whose key equals k. |
| int size( ) | Returns the number of key/value pairs in the map. |
| Collection values( ) | Returns a collection containing the values in the map. This method provides a collection-view of the values in the map. |
Example :
import java.util.*;
public class MapDemo {
public static void main(String[] args) {
Map m1 = new HashMap();
m1.put("Ankit", "8");
m1.put("Kapil", "31");
m1.put("Saurabh", "12");
m1.put("Apoorva", "14");
System.out.println();
System.out.println("Elements of Map");
System.out.print(m1);
}
}
Output :
|
C:\Program Files\Java\jdk1.6.0_18\bin>java MapDemo Elements of Map {Apoorva=14, Ankit=8, Saurabh=12, Kapil=31} |