Get a Submap From a HashMap in Java

06 May 2023 Balmiki Mandal 0 Core Java

How to Get a Submap From a HashMap in Java

Java is a powerful, object-oriented programming language used by developers to create applications of all kinds. One of its core features is the hashmap, which is a data structure that allows you to store key/value pairs in an efficient way. While it is relatively simple to work with individual items in a hashmap, sometimes you may need to get a submap from the hashmap, i.e. a subset of the original map with only some of the elements.

Getting a submap from a hashmap in Java is quite easy, but there are some important things to keep in mind. Let’s take a look at how it’s done!

Step 1: Get the Submap

The first step is to get the submap from the original hashmap. This can be done using the subMap() method, which takes two parameters: the start key and the end key of the submap. The submap will contain all the entries between these two keys. Note that if the end key is not specified, then the last element of the original hashmap is taken as the end key.

For example, if your original hashmap contains the following entries:

Key  Value
1    Apple
2    Banana
3    Orange
4    Pineapple
5    Lemon

Then you can use the subMap() method to get a submap containing entries with keys between 2 and 4. This would give you the following submap:

Key  Value
2    Banana
3    Orange
4    Pineapple 

Step 2: Iterate Through the Submap

Once you have a submap, you can easily iterate through it and access each item in the map. You can do this by using the entrySet() method, which will give you a set view of the submap. You can then use a for-each loop to loop through the entries and get the values stored in each one.

For example, you can use the following code to loop through the submap created in the previous step:

// Get the submap
Map<Integer, String> subMap = originalMap.subMap(2, 4);
 
// Iterate through the submap
for (Map.Entry<Integer, String> entry : subMap.entrySet()) {
    int key = entry.getKey();
    String value = entry.getValue();
    System.out.println("key = " + key + ", value = " + value);
}

This will print out the following output:

key = 2, value = Banana
key = 3, value = Orange
key = 4, value = Pineapple

Conclusion

In this tutorial, we looked at how to get a submap from a hashmap in Java. As you can see, it is quite easy to do and can be useful in certain situations. Just remember to loop through the submap with the entrySet() method so that you can access each value stored in the map!

BY: Balmiki Mandal

Related Blogs

Post Comments.

Login to Post a Comment

No comments yet, Be the first to comment.