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) { Mapm1 = 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} |