Friday, September 5, 2025
HomeLanguagesJavaProgram to convert a Map to a Stream in Java

Program to convert a Map to a Stream in Java

A Stream is a sequence of objects that supports various methods which can be pipelined to produce the desired result.

Below are various method to convert Map to Stream in Java:

  1. Converting complete Map<Key, Value> into Stream: This can be done with the help of Map.entrySet() method which returns a Set view of the mappings contained in this map. In Java 8, this returned set can be easily converted into a Stream of key-value pairs using Set.stream() method.

    Algorithm:

    1. Get the Map<Key, Value>.
    2. Convert Map<Key, Value> into Set<Key> using Map.entrySet() method.
    3. Convert the obtained Set into Stream using Set.stream()
    4. Return/Print the Stream of Map.

    Program:




    // Java Program to convert
    // Map<Key, Value> into Stream
      
    import java.util.*;
    import java.util.stream.*;
      
    class GFG {
      
        // Generic function to convert List of
        // String to List of Integer
        public static <K, V> Stream<Map.Entry<K, V> >
        convertMapToStream(Map<K, V> map)
        {
      
            // Return the obtained Stream
            return map
      
                // Convert the Map to Set
                .entrySet()
      
                // Convert the Set to Stream
                .stream();
        }
      
        public static void main(String args[])
        {
      
            // Create a Map
            Map<Integer, String> map = new HashMap<>();
      
            // Add entries to the Map
            map.put(1, "Geeks");
            map.put(2, "forGeeks");
            map.put(3, "A computer Portal");
      
            // Print the Map
            System.out.println("Map: " + map);
      
            // Convert the Map to Stream
            Stream<Map.Entry<Integer, String> > stream = 
                                       convertMapToStream(map);
      
            // Print the TreeMap
            System.out.println("Stream: " 
                          + Arrays.toString(stream.toArray()));
        }
    }

    
    
    Output:

    Map: {1=Geeks, 2=forGeeks, 3=A computer Portal}
    Stream: [1=Geeks, 2=forGeeks, 3=A computer Portal]
    
  2. Converting only the Keyset of the Map<Key, Value> into Stream: This can be done with the help of Map.keySet() method which returns a Set view of the keys contained in this map. In Java 8, this returned set can be easily converted into a Stream of key-value pairs using Set.stream() method.

    Algorithm:

    1. Get the Map<Key, Value>.
    2. Convert Map<Key, Value> into Set<Key> using Map.keySet() method.
    3. Convert the obtained Set into Stream using Set.stream()
    4. Return/Print the Stream of Map.

    Program:




    // Java Program to convert
    // Map<Key, Value> into Stream
      
    import java.util.*;
    import java.util.stream.*;
      
    class GFG {
      
        // Generic function to convert List of
        // String to List of Integer
        public static <K, V> Stream<K>
        convertMapToStream(Map<K, V> map)
        {
      
            // Return the obtained Stream
            return map
      
                // Convert the Map to Set<Key>
                .keySet()
      
                // Convert the Set to Stream
                .stream();
        }
      
        public static void main(String args[])
        {
      
            // Create a Map
            Map<Integer, String> map = new HashMap<>();
      
            // Add entries to the Map
            map.put(1, "Geeks");
            map.put(2, "forGeeks");
            map.put(3, "A computer Portal");
      
            // Print the Map
            System.out.println("Map: " + map);
      
            // Convert the Map to Stream
            Stream<Integer> stream = convertMapToStream(map);
      
            // Print the TreeMap
            System.out.println("Stream: " 
                        + Arrays.toString(stream.toArray()));
        }
    }

    
    
    Output:

    Map: {1=Geeks, 2=forGeeks, 3=A computer Portal}
    Stream: [1, 2, 3]
    
  3. Converting only the Value of the Map<Key, Value> into Stream: This can be done with the help of Map.values() method which returns a Set view of the values contained in this map. In Java 8, this returned set can be easily converted into a Stream of key-value pairs using Set.stream() method.

    Algorithm:

    1. Get the Map<Key, Value>.
    2. Convert Map<Key, Value> into Set<Value> using Map.values() method.
    3. Convert the obtained Set into Stream using Set.stream()
    4. Return/Print the Stream of Map.

    Program:




    // Java Program to convert
    // Map<Key, Value> into Stream
      
    import java.util.*;
    import java.util.stream.*;
      
    class GFG {
      
        // Generic function to convert List of
        // String to List of Integer
        public static <K, V> Stream<V>
        convertMapToStream(Map<K, V> map)
        {
      
            // Return the obtained Stream
            return map
      
                // Convert the Map to Set<Value>
                .values()
      
                // Convert the Set to Stream
                .stream();
        }
      
        public static void main(String args[])
        {
      
            // Create a Map
            Map<Integer, String> map = new HashMap<>();
      
            // Add entries to the Map
            map.put(1, "Geeks");
            map.put(2, "forGeeks");
            map.put(3, "A computer Portal");
      
            // Print the Map
            System.out.println("Map: " + map);
      
            // Convert the Map to Stream
            Stream<String> stream = convertMapToStream(map);
      
            // Print the TreeMap
            System.out.println("Stream: " 
                         + Arrays.toString(stream.toArray()));
        }
    }

    
    
    Output:

    Map: {1=Geeks, 2=forGeeks, 3=A computer Portal}
    Stream: [Geeks, forGeeks, A computer Portal]
    
RELATED ARTICLES

Most Popular

Dominic
32264 POSTS0 COMMENTS
Milvus
81 POSTS0 COMMENTS
Nango Kala
6634 POSTS0 COMMENTS
Nicole Veronica
11801 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11863 POSTS0 COMMENTS
Shaida Kate Naidoo
6750 POSTS0 COMMENTS
Ted Musemwa
7025 POSTS0 COMMENTS
Thapelo Manthata
6701 POSTS0 COMMENTS
Umr Jansen
6718 POSTS0 COMMENTS