Java for-each Loop

In Java, the for-each loop is used to iterate through elements of arrays and collections (like ArrayList). It is also known as the enhanced for loop.


for-each Loop Sytnax

The syntax of the Java for-each loop is:

for(dataType item : array) {
    ...
}

Here,

  • array - an array or a collection
  • item - each item of array/collection is assigned to this variable
  • dataType - the data type of the array/collection

Example 1: Print Array Elements

Output

3
9
5
-5

Here, we have used the for-each loop to print each element of the numbers array one by one.

  • In the first iteration, item will be 3.
  • In the second iteration, item will be 9.
  • In the third iteration, item will be 5.
  • In the fourth iteration, item will be -5.

Example 2: Sum of Array Elements

Output:

Sum = 19

In the above program, the execution of the for each loop looks as:

Iteration Variables
1 number = 3
sum = 0 + 3 = 3
2 number = 4
sum = 3 + 4 = 7
3 number = 5
sum = 7 + 5 = 12
4 number = -5
sum = 12 + (-5) = 7
5 number = 0
sum = 7 + 0 = 7
6 number = 12
sum = 7 + 12 = 19

As we can see, we have added each element of the numbers array to the sum variable in each iteration of the loop.


for loop Vs for-each loop

Let's see how a for-each loop is different from a regular Java for loop.

1. Using for loop

Output:

a
e
i
o
u

2. Using for-each Loop

Output:

a
e
i
o
u

Here, the output of both programs is the same. However, the for-each loop is easier to write and understand.

This is why the for-each loop is preferred over the for loop when working with arrays and collections.