Enhanced for loop:

for (String element : array) {

    // rest of code handling current element
}

Traditional for loop equivalent:

for (int i=0; i < array.length; i++) {
    String element = array[i]; 

    // rest of code handling current element
}

Take a look at these forums: https://blogs.oracle.com/CoreJavaTechTips/entry/using_enhanced_for_loops_with

http://www.java-tips.org/java-se-tips/java.lang/the-enhanced-for-loop.html

Answer from user1920811 on Stack Overflow
🌐
GeeksforGeeks
geeksforgeeks.org › java › difference-between-for-loop-and-enhanced-for-loop-in-java
Java for loop vs Enhanced for loop - GeeksforGeeks
July 23, 2025 - The enhanced for loop, also known as the for-each loop, is a streamlined way to iterate over collections and arrays. It eliminates the need for managing the loop's counter or bounds manually.
Discussions

Can someone explain the enhanced for-loop ? as simple as possible ?
Sure. Say you have an array list of strings (ArrayList list), and you wanted to print out each of the elements in the list. You could do it one of two ways: for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } or method 2: for (String s : list) { System.out.println(s); } This second function is the enhanced for loop. So basically if you're iterating over a list or set, you don't have to write out the full old for loop syntax, you can just write the much more readable enhanced for-loop syntax. Its much more readable because the bounds of the for-loop are very clear (you're iterating over each element of the for loop from start to end) and you immediately have access to each element without calling .get(index). The downsides of the enhanced for-loop is that you don't have access to the index you're at without explicitly keeping track of it, and that it only works on objects that extend the Collections interface, so really only lists and sets. So no enhanced for loops on hashmaps or iterators. More on reddit.com
🌐 r/learnjava
10
5
July 20, 2015
Why Enhanced ForLoop take more time over simple loop ?Can you please explain the internal working for Enhanced forloop ? | Core Java Forum
And many a times, you don't want the garbage collector to run so that's the reason they say when dealing with large numbers(or large/huge data) if you can avoid using enhanced for loop then it should be avoided. ... We offer online classes and lifetime videos access of Core Java, Spring Boot, ... More on javaspringhibernate.com
🌐 javaspringhibernate.com
December 25, 2021
What's the purpose of using a for-each/enhanced for-loop?
It makes the code easier to read, allows the use of lambdas (in the case of stream()) and eliminates the need for an index variable and a get() operation required by the classic for loop. If, say, you wanted to print the contents of an ArrayList list using a classic for loop, it would look like this: for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } Using an enhanced for loop, it would look like this: for(String s: list) { System.out.println(s); } There is now no need to use an index variable or a get() operation. More on reddit.com
🌐 r/learnjava
9
14
April 26, 2019
Uses of Enhanced For Loop in Java?
It's not used just to display arrays. It can be used for a variety of things (finding max in an array, finding number of elements that satisfy a criteria, etc). You sound like you are preparing for an exam or something. If so, the teacher using the phrase "enhanced" seems wrong. Should be called a foreach loop (even though each does not appear in the syntax). More on reddit.com
🌐 r/learnprogramming
10
1
March 24, 2022
🌐
Programiz
programiz.com › java-programming › enhanced-for-loop
Java for-each Loop (With Examples)
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.
🌐
freeCodeCamp
freecodecamp.org › news › enhanced-for-loops-in-java-how-to-use-foreach-loops-on-arrays
Enhanced For Loops in Java – How to Use ForEach Loops on Arrays
February 17, 2023 - You can use enhanced loops in Java to achieve the same results as a for loop. An enhanced loop is also known as a for-each loop in Java. Enhanced loops simplify the way you create for loops. They are mostly used to iterate through an array or ...
🌐
Zero To Mastery
zerotomastery.io › blog › enhanced-for-loop-java
How To Use Enhanced For Loops In Java (aka 'foreach') | Zero To Mastery
January 26, 2024 - Java 5 introduced the enhanced for loop in Java. In this guide, I break down what it is, it's differences to the for loop, when best to use either, and more!
Find elsewhere
🌐
Runestone Academy
runestone.academy › ns › books › published › csawesome › Unit6-Arrays › topic-6-3-arrays-with-foreach.html
6.3. Enhanced For-Loop (For-Each) for Arrays — CSAwesome v1
Would that work with an enhanced for-each loop? Unfortunately not! Because only the variable in the loop changes, not the real array values. We would need an indexed loop to modify array elements. Try it in the Active Code below or in the Java visualizer by clicking the CodeLens button and step through the code to see why it doesn’t work.
🌐
Oracle
docs.oracle.com › cd › E19253-01 › 817-7970 › features-forloop › index.html
Enhanced for Loop - Java Language Features
Documentation Home > JDK for Solaris Developer's Guide > New Features and Enhancements > Java Language Features > Enhanced for Loop ... This new language construct eliminates the drudgery and error-proneness of iterators and index variables when iterating over collections and arrays.
🌐
CodeGym
codegym.cc › java blog › java collections › enhanced for loop in java
Enhanced for loop in Java
February 13, 2025 - We don't have to keep track of an index or worry about the length of the array. The enhanced for loop takes care of all of this for us. We can also use the enhanced for loop to iterate over a collection. Let's take a look at an example of iterating over an ArrayList of Strings. // Here is the example of an enhanced for loop to iterate over a collection import java.util.ArrayList; public class EnhancedForLoop { public static void main(String[] args) { // use the enhanced for loop to iterate over the `names` ArrayList ArrayList<String> names = new ArrayList<String>(); names.add("Alice"); names.add("Bob"); names.add("Charlie"); for (String name : names) { System.out.println(name); } } }
🌐
Quora
quora.com › How-and-when-should-we-use-an-enhanced-for-loop-arrays-in-Java
How and when should we use an enhanced for loop (arrays in Java)? - Quora
The enhanced for loop offers simple syntax to iterate through a collection of values-an array, ArrayList, or other classes from Java's Collection framework that store a collection of values.
🌐
W3Schools
w3schools.com › java › java_foreach_loop.asp
Java For-Each Loop
Java Examples Java Videos Java Compiler Java Exercises Java Quiz Java Code Challenges Java Server Java Syllabus Java Study Plan Java Interview Q&A Java Certificate ... There is also a "for-each" loop, which is used exclusively to loop through elements in an array (or other data structures):
🌐
Techflownow
techflownow.in › java-enhanced-for-loop.html
Java Enhanced For Loop Mistakes - TechFlow Now
Directly modifying elements in enhanced for can lead to unexpected behavior. int[] nums = {1, 2, 3}; for (int n : nums) { n = n * 2; // Doesn't change array elements } Use a traditional for loop with index if you want to modify array elements.
🌐
Runestone Academy
runestone.academy › ns › books › published › csjava › Unit7-Arrays › topic-7-3-arrays-with-foreach.html
7.3. Enhanced For-Loop (For-Each) for Arrays — CS Java
There is a special kind of loop that can be used with arrays called an enhanced for loop or a for each loop. This loop is much easier to write because it does not involve an index variable or the use of the []. It just sets up a variable that is set to each value in the array successively.
🌐
Coderanch
coderanch.com › t › 449084 › java › enhanced-loop-iterate-reverse-order
Using enhanced for loop to iterate in reverse order ? (Java in General forum at Coderanch)
Amandeep: You'd have to go through the steps of creating another List/Array, copying the elements in reverse order to the new List/Array, then using the for each loop on that. It should be relatively easy to do. John. ... Or you could use Collections.reverse() to reverse the order of the existing list. But offhand, it's probably easier to just use the old-fashioned for loop. Enhanced for isn't designed to handle everything - it just handles the most common case, and handles it very well.
🌐
Blogger
javarevisited.blogspot.com › 2016 › 02 › how-does-enhanced-for-loop-works-in-java.html
How foreach or Enhanced for loop works in Java? Example
July 21, 2023 - The enhanced loop provides the cleanest way to loop through an array or collection in Java, as you don't need to keep track of the counter or you don't need to call the hasNext() method to check whether there are more elements left.
🌐
Java-Latte
myjavalatte.wordpress.com › 2014 › 07 › 22 › enhanced-for-each-loop-example-in-java
Enhanced for each loop in Java | Java-Latte
July 22, 2014 - You need to create a looping variable and specify the start and end positions of the collection or the array, even if you want to iterate through the complete collection or list. The enhanced for loopmakes the previously mentioned routine task quite a breeze, as the following example demonstrates for an ArrayList myList: You can read the colon (:) in a for-each loop as “in”.
🌐
Quora
quora.com › What-is-the-advanced-for-loop-in-Java
What is the advanced for loop in Java? - Quora
Answer (1 of 5): An “advanced” for loop, also called a for-each loop, is a simple way to get the elements in a collection [code]int[] array = new int[]{ 2, 3, 5, 7, 11, 13, 17, 19 }; for(int a:array) System.out.println(a); [/code]The main ...
🌐
GeeksforGeeks
geeksforgeeks.org › java › for-each-loop-in-java
For-Each Loop in Java - GeeksforGeeks
3 weeks ago - Explanation: In the above example, we use the for-each loop to iterate the list of integer to find the largest or maximum value in the list. Here, we use the Integer.MIN_VALUE which is the minimum value of integer and compare it the element of list and check if the element is greater than the max then update the max value. While the for-each loop is convenient, there are some important limitations to consider: