Loops are used to execute a block of code repeatedly until a specified condition becomes false. Java provides several looping statements, among which while and do-while loops are commonly used when the number of iterations is not known in advance.
- Both while and do-while loops execute a block of code repeatedly based on a condition.
- The main difference is that a while loop checks the condition before execution, whereas a do-while loop checks the condition after execution.
while loop
A while loop is a control flow statement that allows code to be executed repeatedly based on a given Boolean condition. The while loop can be thought of as a repeating if statement.
Syntax
while (boolean condition)
{
loop statements...}
Flowchart:

Example:
#include <iostream>
using namespace std;
int main()
{
int i = 5;
while (i < 10) {
i++;
cout << "GFG\n";
}
return 0;
}
#include <stdio.h>
int main()
{
int i = 5;
while (i < 10) {
printf("GFG\n");
i++;
}
return 0;
}
import java.io.*;
class GFG {
public static void main(String[] args)
{
int i = 5;
while (i < 10) {
i++;
System.out.println("GfG");
}
}
}
Output
GFG GFG GFG GFG GFG
do-while loop
do while loop is similar to while loop with the only difference that it checks for the condition after executing the statements, and therefore is an example of
Syntax
do{
statements..
}
while (condition);
Flowchart:

Example:
#include <iostream>
using namespace std;
int main()
{
int i = 5;
do {
i++;
cout << "GFG\n";
} while (i < 10);
return 0;
}
#include <stdio.h>
int main()
{
int i = 5;
do {
printf("GFG\n");
i++;
} while (i < 10);
return 0;
}
import java.io.*;
class GFG {
public static void main(String[] args)
{
int i = 5;
do {
i++;
System.out.println("GfG");
} while (i < 10);
}
}
Output
GFG GFG GFG GFG GFG
while Vs do-while loop
| while | do-while |
|---|---|
| Condition is checked first then statement(s) is executed. | Statement(s) is executed atleast once, thereafter condition is checked. |
| It might occur statement(s) is executed zero times, If condition is false. | At least once the statement(s) is executed. |
| No semicolon at the end of while. while(condition) | Semicolon at the end of while. while(condition); |
| Variable in condition is initialized before the execution of loop. | variable may be initialized before or within the loop. |
| while loop is entry controlled loop. | do-while loop is exit controlled loop. |
| while(condition) { statement(s); } | do { statement(s); } while(condition); |