How to Iterate Over Keys in a Map in Java - Step by Step Examples



How to Iterate Over Keys in a Map in Java ?

Answer

To iterate over keys in a map in Java, you can use a for-each loop with the keySet method or an iterator. This allows you to access each key in the map.



✐ Examples

1 Iterating Over Keys Using for-each Loop

We can iterate over keys in a map in Java using a for-each loop with the keySet method, which provides a convenient syntax for iterating over all keys in the map.

For example,

  1. We start by importing the java.util.HashMap package, which provides the HashMap class needed to create and manipulate the map.
  2. We declare and initialize a map named myMap with some key-value pairs. In this example, the map has integer keys and string values.
  3. We use the keySet method to get a set of the keys in the map.
  4. We iterate over the keys using a for-each loop, accessing each key directly from the set.
  5. We print each key to the console using the System.out.println function to verify that we are iterating over all keys.

Java Program

import java.util.HashMap;
import java.util.Map;

public class Main {
    public static void main(String[] args) {
        // Declare and initialize a map
        Map<Integer, String> myMap = new HashMap<>();
        myMap.put(1, "one");
        myMap.put(2, "two");
        myMap.put(3, "three");

        // Iterate over keys using for-each loop
        for (Integer key : myMap.keySet()) {
            System.out.println(key);
        }
    }
}

Output

1
2
3

2 Iterating Over Keys Using Iterator

We can iterate over keys in a map in Java using an iterator, which provides a flexible way to access each key in the map.

For example,

  1. We start by importing the java.util.HashMap and java.util.Iterator packages, which provide the HashMap and Iterator classes needed to create and manipulate the map and iterate over its keys.
  2. We declare and initialize a map named myMap with some key-value pairs. In this example, the map has integer keys and string values.
  3. We declare an iterator for the set of keys in the map using the keySet and iterator methods.
  4. We use a while loop to iterate over the keys of the map by incrementing the iterator. We access each key using the next method of the iterator.
  5. We print each key to the console using the System.out.println function to verify that we are iterating over all keys.

Java Program

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

public class Main {
    public static void main(String[] args) {
        // Declare and initialize a map
        Map<Integer, String> myMap = new HashMap<>();
        myMap.put(1, "one");
        myMap.put(2, "two");
        myMap.put(3, "three");

        // Declare an iterator for the set of keys in the map
        Iterator<Integer> iterator = myMap.keySet().iterator();

        // Iterate over keys using iterator
        while (iterator.hasNext()) {
            Integer key = iterator.next();
            System.out.println(key);
        }
    }
}

Output

1
2
3

3 Storing and Iterating Over Keys Separately

We can store keys in a separate list and then iterate over the list in Java, which provides a way to work with keys independently of their values.

For example,

  1. We start by importing the java.util.HashMap and java.util.ArrayList packages, which provide the HashMap and ArrayList classes needed to create and manipulate the map and store the keys.
  2. We declare and initialize a map named myMap with some key-value pairs. In this example, the map has integer keys and string values.
  3. We declare a list named keys to store the keys from the map.
  4. We use a for-each loop to iterate over the keys of the map and add each key to the keys list using the add method.
  5. We use another for-each loop to iterate over the keys list and print each key to the console using the System.out.println function to verify that we have stored all keys separately.

Java Program

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

public class Main {
    public static void main(String[] args) {
        // Declare and initialize a map
        Map<Integer, String> myMap = new HashMap<>();
        myMap.put(1, "one");
        myMap.put(2, "two");
        myMap.put(3, "three");

        // Declare a list to store the keys
        List<Integer> keys = new ArrayList<>();

        // Store keys in the list
        for (Integer key : myMap.keySet()) {
            keys.add(key);
        }

        // Iterate over the keys list
        for (Integer key : keys) {
            System.out.println(key);
        }
    }
}

Output

1
2
3

Summary

In this tutorial, we learned How to Iterate Over Keys in a Map in Java language with well detailed examples.




More Java Maps Tutorials

  1. How to create an Empty Map in Java ?
  2. How to create a Map with Initial Key-Value Pairs in Java ?
  3. How to Print a Map in Java ?
  4. How to Add a Key-Value Pair to a Map in Java ?
  5. How to Set a Default Value for a Key in a Map in Java ?
  6. How to Update the Value for a Key in a Map in Java ?
  7. How to Check if a Map is Empty in Java ?
  8. How to Check if a Key Exists in a Map in Java ?
  9. How to Check if a Value Exists in a Map in Java ?
  10. How to Get the Value Associated with a Key in a Map in Java ?
  11. How to Remove a Key-Value Pair from a Map in Java ?
  12. How to Remove Key-Value Pairs from a Map Based on Values in Java ?
  13. How to Clear All Key-Value Pairs from a Map in Java ?
  14. How to Iterate Over Keys in a Map in Java ?
  15. How to Iterate Over Values in a Map in Java ?
  16. How to Iterate Over Entries (Key-Value Pairs) in a Map in Java ?
  17. How to Get the Size (Number of Key-Value Pairs) of a Map in Java ?
  18. How to Convert a Map to an Array of Keys in Java ?
  19. How to Convert a Map to an Array of Values in Java ?
  20. How to Merge Two Maps in Java ?
  21. How to Copy a Map in Java ?
  22. How to Check if Two Maps are Equal in Java ?
  23. How to Sort a Map by Keys in Java ?
  24. How to Sort a Map by Values in Java ?
  25. How to Filter a Map Based on Keys in Java ?
  26. How to Filter a Map Based on Values in Java ?
  27. How to Reduce Values in a Map to a Single Value in Java ?
  28. How to Convert an Array of Key-Value Pairs to a Map in Java ?
  29. How to Convert a Map to a JSON String in Java ?
  30. How to Convert a JSON String to a Map in Java ?
  31. How to Swap Keys and Values in a Map in Java ?
  32. How to Create a Map of Maps in Java ?
  33. How to Iterate Over a Map of Maps in Java ?