Java for Loops…
Java Tutorial – Java for Loops…
In this tutorial we will discuss one of the three basic looping constructs — the Java For Loop. We will discuss the syntax of the for loop, definition and initialization of the loop, boolean expression, and loop iteration.
What’s Covered
- What is the For Loop?
- For loop Syntax
- For loop Example
- For loop Output
- Infinite Loop using For
- Infinite Loop Output
- For Loop Variations
- Infinite Loop using For (Logic Bug)
- For loop Output (Logic Bug)
- For loop — Stop Conditions
- Break Statement
- Labeled Break Statement
- Labeled Break Statement Output
- Continue Statement
- Continue Statement Output
- Labeled Continue Statement
- Labeled Continue Statement Output
- Java 5 Enhanced For Loop
- Java 5 Enhanced For Loop Output
What is the For Loop?
The for statement provides a mechanism to allow us to repeat a set of java operations while the condition is true. The for statement starts with initialization, followed by a boolean expression evaluation, and finally a update statement to either increment or decrement the variable used in the looping structure.
For loop Syntax
for (initialization; boolean condition; update_statements) { statement; statement; ... }
Key points when using this version of the for loop:
- The initialization statement initializes the loop when the loop begins (only executed once).
- The loop continues as long as the boolean condition evaluates to true; as soon as it becomes false the loop ends.
- The update_statements can either increment or decrement the value after each iteration through the loop.
For loop Example
In the following example, the for loop does the following:
- initialize int i=0
- check the condition; is the value of i is less than 5
- increment i by 1. i++ is the short version of i=i+1
public class ForLoopExample { public static void main(String[] args) { for (int i=0; i<5; i++) { System.out.println("value of i=" + i); } } }
For loop Output
value of i=0 value of i=1 value of i=2 value of i=3 value of i=4
As you can see from the example above, our for loop is initialized to zero (0), our boolean expression i<5 is evaluated and is true the update statement i++ is executed incrementing i to 1 after the statement block is executed. This looping will continue while the boolean expression evaluates to true.
For Loop Variations
Since all three parts of the for loop are optional, we can rewrite the for loop in a number of different ways. In this example below, we will leave out the optional initialization part. The variable k is declared outside the loop, enabling variable k to be used outside of the for statement block.
public class ForLoopExample { public static void main(String[] args) { int k = 0; for ( ; k<5 ; k++) { System.out.println("value of k=" + k); } // k is still in scope here } }
In this next example, we leave out the optional update statement and we perform the increment inside of the statement block.
public class ForLoopExample { public static void main(String[] args) { int k = 0; for ( ; k<5 ; ) { System.out.println("value of k=" + k); k++; } } }
Infinite Loop using For
One way we can create an infinite loop is by leaving the three optional expressions in the for statement empty.
statement;
}
public class ForLoopExample { public static void main(String[] args) { int i = 0; for ( ; ; ) { System.out.println("value is " + i); i++; } } }
Infinite Loop Output
value is 0 value is 1 value is 2 value is 3 value is 4 value is 5 value is 6 value is 7 ...
Infinite Loop using For (Logic Bug)
Additionally, we could create an infinite loop inadvertently by using an incorrectly laid out booleanExpression. In this example, our i<11 condition will never be false as every new value is also less than 11. In actuality, this loop will continue until we hit the minimum value for integer which is Integer.MIN_VALUE or -2147483648 (2^31-1).
public class InfiniteForLoopExample { public static void main(String[] args) { for (int i=10; i<11; i--) { System.out.println("value of i=" + i); } } }
For loop Output (Logic Bug)
value of i=10 value of i=9 value of i=8 value of i=7 value of i=6 ...
For loop — Stop Conditions
The following conditions will trigger the for statement to stop:
- if our booleanExpression evaluates to false
- a break statement is executed
- a continue statement is executed
- a runtime error or exception occurs
Break Statement
The break statement is used to break out of for, while, do-while and switch statements. There are two forms of the break statement: labeled and unlabeled.
public class BreakForLoopExample { public static void main(String[] args) { for ( int j=0; j < 10; j++) { System.out.println("value of j=" + j); if (j >= 4) break; } } }
Break Statement Output
As you can see below, the break statement terminates the for loop when the value of j is greater than or equal to 4 as denoted by the j>=4 if condition.
value of j=0 value of j=1 value of j=2 value of j=3 value of j=4
Labeled Break Statement
The break statement terminates the for loop which includes the labeled statement. Control is transfered to the statement immediately following the terminated labeled statement.
Labeled Break/Labeled Continue
In general, I would recommend that you avoid the use of labels as much as possible. Please use them sparingly and with caution.
public class LabeledForLoopExample { public static void main(String[] args) { begin: for ( int j=0; j < 5; j++) { for ( int k=0; k < 5; k++) { System.out.println("value is " + j + ':' + k); if (j == 1 && k == 2) break begin; } } } }
Labeled Break Statement Output
In this example, we use two for loops iterating from 0 through 4 for both the inner and outer loops. Within the inner loop we have println statement to print out the value of variable j and k. Note that the break statement breaks the loop if j equals 1 and k equals 2.
value is 0:0 value is 0:1 value is 0:2 value is 0:3 value is 0:4 value is 1:0 value is 1:1 value is 1:2
Continue Statement
The continue statement is similar to break except that it only stops the execution of the current iteration of for, while or do-while loops.
public class ForLoopExample { public static void main(String[] args) { for ( int j=0; j < 5; j++) { for ( int k=0; k < 5; k++) { if (k == 2) continue; System.out.println("value is " + j + ':' + k); } } } }
Continue Statement Output
In this example, you will notice that the if statement checks k and if it has a value of 2 it will execute the continue statement and skips the println statement. In the output below, you will note that every value of k where it equals 2 is left out of the execution.
value is 0:0 value is 0:1 value is 0:3 value is 0:4 value is 1:0 value is 1:1 value is 1:3 value is 1:4 value is 2:0 value is 2:1 value is 2:3 value is 2:4 value is 3:0 value is 3:1 value is 3:3 value is 3:4 value is 4:0 value is 4:1 value is 4:3 value is 4:4
Labeled Continue Statement
In Java, continue may also be followed by a label as was the break statement. In our example below, we will continue to the outer loop once our condition, that is, when j is equal to 1 and k is equal to 2, is met.
public class ForLoopExample { public static void main(String[] args) { begin: for ( int j=0; j < 5; j++) { for ( int k=0; k < 5; k++) { System.out.println("value is " + j + ':' + k); if (j == 1 && k == 2) continue begin; } } } }
Labeled Break Statement Output
value is 0:0 value is 0:1 value is 0:2 value is 0:3 value is 0:4 value is 1:0 value is 1:1 value is 1:2 value is 2:0 value is 2:1 value is 2:2 value is 2:3 value is 2:4 value is 3:0 value is 3:1 value is 3:2 value is 3:3 value is 3:4 value is 4:0 value is 4:1 value is 4:2 value is 4:3 value is 4:4
Java 5 Enhanced For Loop
Java 5 introduced an enhanced for statement. This enhanced for loop may be used to iterate over collections and arrays. Use of this form can make ypour code easier to read and more maintainable.
statement;
}
Where type is the element type of the array or collection, variable is a reference to the elements in the array or collection and colleciton is the reference to the array or collection.
public class EnhancedForLoopExample { public static void main(String[] args) { String names[] = {"Amaury", "John", "James", "Marie"}; for (String name : names) { System.out.println("value is " + name); } } }
Java 5 Enhanced For Loop Output
value is Amaury value is John value is James value is Marie
That’s It!
I hope you enjoyed this tutorial. It was certainly a lot of fun putting it together and testing it out. Please continue to share the love and like us so that we can continue bringing you quality tutorials. Happy Coding!!!

Core Java Related Tutorials
- Base64 Encoding and Decoding Examples in Java 8
In this tutorial we will discuss how to Encode and Decode using Base64 using Java 8, which now finally has native Base64 support. - Base64 Encoding and Decoding Examples in Java using Google Guava
This tutorial will introduce how to Encode and Decode using Base64 using Google’s Guava Project Open Source library. - Base64 Encoding and Decoding Examples in Java using Apache Commons
This tutorial will introduce Base64 encoding and decoding examples using the Apache Commons Codec library. - Custom Number Formatting in Java
In this example we will show you how to use the NumberFormat and DecimalFormat classes to format numbers using special patterns. - Custom Date Formatting in Java
In this example we will show you how to use the SimpleDateFormat class to format Date objects using special patterns to better fit the needs of the application.
Please Share Us on Social Media






Leave a Reply