We have one more collection, called Map. We will take an example and discuss Map as we proceed with the code. This interface takes the values in the form of a key and value pair.
We create a class, hashMapexample, and within that the we define HashMap. HashMap requires two types of argument, such as Integer and String:
package coreJava;
import java.util.HashMap;
public class hashMapexample {
public static void main(String[] args) {
HashMap<Integer, String> hm= new HashSet<Integer, String>();
}
}
Here, Integer is the key and String is the value. Now if you type hm. in your IDE, you will see a few methods present in HashMap; let's use the put method:
hm.put(0, "hello");
hm.put(1, "goodbye");
hm.put(2, "morning");
hm.put(3, "evening");
The put method takes the input in the form of keys and values. Also, the value of the key needs to be an integer, it can be a string as well. The key is just something we define for the value. We can remove a value using the remove method:
hm.remove(2);
The entrySet method in HashMap stores each key and value in the form of a set index:
Set sn= hm.entrySet();
We have now converted this HashMap into a set. To traverse through each index of this set, we use iterator and, just like in the previous section, we use the while loop:
Iterator it= sn.iterator();
while(it.hasNext())
{
Map.Entry mp=(Map.Entry)it.next();
System.out.println(mp.getKey());
System.out.println(mp.getValues());
}
We need to use Map.Entry here, as the element in each index consists of a key and a value, and Map.Entry helps us to separate out the keys and values. When you print this while loop, you should get the following output:
0
hello
1
goodbye
2
morning
3
evening
Without using Map.Entry, it'll throw an error. This is how HashMap works.