Generally each line of code in a program executed only once. Sometime we come to a situation where in we want to repeat the execution of one or more line of code more than once.
To address such requirements java provides looping statements. The looping statements are special symbols
which asks the computer to repeat the execution of instructions written inside these statements as far as a given condition is true.
Java provides below looping statements to repeat
the execution of statements in a program.
-
forloop -
whileloop -
do whileloop
For an example let us imagine, we have to print digits from 1 to 10, one approach could be, we can write
a program which includes 10 print statements, but what about if you need to print
digits from 1 to 100 or more ?. Java looping statements can help you to accomplish the same in
an easy way. Java for loop
can be used to repeat execution of statements for a fixed number of times or till
a condition is true. The basic syntax of for loop is :
for(initialization; condition; increment/decrement) {// code to be executed inside for loop}
Everything given inside () after for loop are optional expressions which performs specific tasks. Initialization expression is used to initialize variables,
objects etc. for example int i = 0, int count=10 etc.
Condition expression is used to test the condition, for example i<=10, count>0 etc.
Increment/decrement expression is used to change in variable or object value, for example i++, count-- etc.
Everything that comes inside matching curly brackets {} after for keyword is the part of for statement which is also called as
for block or for loop body.
How for loop works
- Initialization expression is the first expression which get's executed as the loop begins and it is executed only once.
- Then condition expression is evaluated, it's a boolean expression which returns either
trueorfalse. - If the condition expression returns as
true,- Statements inside the body of
forloop is executed. - Then the increment/decrement expression is executed.
- Again, the condition expression is evaluated.
If it returns as
true, again the statements inside the body offorloop is executed and then increment/decrement expression is executed. This process goes on until the condition expression returns asfalse.
- Statements inside the body of
- If the condition expression returns as
false,forloop terminates.
Control flow diagram of for loop
for loop program in Java
classForLoop {public static voidmain(String [] args) {for(intnum=1; num<=10; num++) { System.out.println(num); } System.out.println("After the end of for loop"); } }
Output:
1
2
3
4
5
6
7
8
9
10
After the end of for loop
Can I use multiple variables in for loop expressions ?
Yes you can use multiple variables in for loop expressions. For eg. for
(int x=0, y=10; x<10 && y>0; x++, y-- )
is a valid java for loop. You can initialize multiple variables of same data type only in initialization expression.
Infinite for loop
What if the condition expression written in for loop statement always returns as true, the body of for
loop will keep executing, this is basically called as infinite for loop.
classInfiniteForLoop {public static voidmain(String [] args) {for(intnum=1; num>0; num++) { System.out.println(num); } } }
In above program, num>0 will always return true since num is increasing in every iteration. So for loop
will keep executing infinite number of times. If you are running this program inside command prompt, just press ctrl + c to exit from execution.
In for loop syntax, all the expressions are optional, programmer can leave all of them as blank. If all
of them leaved as blank, this again becomes infinite for loop.
for( ; ; ) {// code to be executed inside for loop}
- Ensure that all letters in for keyword is small, can not use For, FOR foR etc.
- Do not forget to add semicolon(;) between different expressions of for loop, missing that will result in compile time error.
- Do not add semicolon(;) after for loop like for(...); which will end the for loop there itself.
- Variables declared in initialization expression are accessible within for loop body. You can not access outside of for loop body.
- Ensure condition expression is correct, sometime programmers make mistake in this, which results as infinite for loop.


