Sunday, June 27, 2021

How to Iterate a HashMap of ArrayLists of String in Java

This Java program shows how to iterate a HashMap that contains arraylists of String.

In the Java program to iterate a HashMap containing ArrayLists there is a method getMap() where 3 lists are created and stored in the HashMap.

First you need to iterate the HashMap, though there are several ways to iterate over a HashMap, but here I have used the for-each loop for iterating the created HashMap. Each Map.Entry object is a key-value pair where value is the ArrayList stored with the given key. That's the list retrieved using listEntry.getValue() method.

In the second for-each loop List that is retrieved using listEntry.getValue() is iterated and the elements that are in the list are displayed.

Java Program to Iterate HashMap of ArrayLists

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class MapLoop {

  public static void main(String[] args) {
    MapLoop mapLoop = new MapLoop();
    Map<String, List<String>> cityMap = mapLoop.getMap();
    int i = 0;
    // iterating over a map
    for(Map.Entry<String, List<String>> listEntry : cityMap.entrySet()){
      System.out.println("Iterating list number - " + ++i);
      // iterating over a list
      for(String cityName : listEntry.getValue()){
        System.out.println("City - " + cityName);
      }
    }
  }
    
  /**
   * A method to create a list and store it in a Map
   * @return
  */
  private Map<String, List<String>> getMap(){
    Map<String, List<String>> cityMap = new HashMap<String, List<String>>();
    // First List
    List<String> temp = new ArrayList<String>();  
    temp.add("Delhi");
    temp.add("Mumbai");
    // Putting first list in the map
    cityMap.put("1", temp);
    // Second List
    temp = new ArrayList<String>();  
    temp.add("Hyderabad");
    temp.add("Bangalore");
    // Putting second list in the map
    cityMap.put("2", temp);
    // Third List
    temp = new ArrayList<String>();
    temp.add("Kolkata");
    temp.add("Chennai");
    // Putting third list in the map
    cityMap.put("3", temp);
    return cityMap;
  }
}
Output
Iterating list number - 1
City - Delhi
City - Mumbai
Iterating list number - 2
City - Hyderabad
City - Bangalore
Iterating list number - 3
City - Kolkata
City - Chennai

That's all for this topic How to iterate a Hash map of arraylists of String in Java. If you have any doubt or any suggestions to make please drop a comment. Thanks!

>>>Return to Java Programs Page


Related Topics

  1. How HashMap Internally Works in Java
  2. How to Loop Through a Map in Java
  3. How to Loop or Iterate an Arraylist in Java
  4. How to Sort ArrayList of Custom Objects in Java
  5. Count Number of Times Each Character Appears in a String Java Program

You may also like-

  1. Method Overloading in Java
  2. Dependency Injection in Spring Framework
  3. Race Condition in Java Multi-Threading
  4. Java ReentrantLock With Examples
  5. CopyOnWriteArrayList in Java With Examples
  6. Java Exception Handling Interview Questions And Answers
  7. Java Collections Interview Questions And Answers
  8. Producer-Consumer Java Program Using wait notify

No comments:

Post a Comment