Java – forEach() method

forEach() method:

  • forEach() introduced in JDK8 to iterate the collection easily.
  • forEach() defined in both Iterable interface and in Stream interface.
  • forEach() method is a Default method.
default void forEach(Consumer<super T>action)

Note: forEach() method takes a single parameter which is a functional interface. So, you can pass lambda expression or method reference as input.

Iterating List

Defining a List:

List<String> names = Arrays.asList(“C”, “Java”, “Python”);

using lambda expression:

names.forEach(name->System.out.println(name));

using method reference:

names.forEach(System.out::println);

Iterating Set

Defining a Set:

Set<String> uniqueNames = new HashSet<>(Arrays.asList(“C”, “C++”, “Java”));

using lambda expression:

uniqueNames.forEach(name->System.out.println(name));

using method reference:

uniqueNames.forEach(System.out::println);

Iterating Map

Defining a Map:

Map<Integer, String> namesMap = new HashMap<>();
namesMap.put(1, “Java”);
namesMap.put(2, “JDBC”);
namesMap.put(3, “JSP”);

Iterate map:

namesMap.forEach((key, value) -> System.out.println(key + ” ” + value));

Iterating Map using entrySet:

namesMap.entrySet().forEach(entry -> System.out.println(   entry.getKey() + ” ” + entry.getValue()));

Iterate List:

import java.util.*;
import java.util.*;
class Main
{
            public static void main(String[] args)
            {
                        List<Integer> list = new ArrayList<>(Arrays.asList(10,20,30,40,50));
                        list.forEach(x->System.out.println(x));
            }
}

Iterate Set:

import java.util.*;
import java.util.*;
class Main
{
            public static void main(String[] args)
            {
                        List<Integer> list = new ArrayList<>(Arrays.asList(10,20,30,40,50));
                        Set<Integer> set = new HashSet<>(list);
                        set.forEach(x->System.out.println(x));
            }
}

Iterate Map:

import java.util.*;
import java.util.*;
class Main
{
            public static void main(String[] args)
            {
                        Map<Integer,String> map = new HashMap<>();
                        map.put(1, “Java”);
                        map.put(2, “Servlets”);
                        map.put(3, “JSP”);
                        map.forEach((k, v)->System.out.println(k + ” = ” + v));
            }
}
Scroll to Top