Java Nested Loops with Examples

01 Oct, 2021
Nested loop means a loop statement inside another loop statement. That is why nested loops are also called as “loop inside loop“.Syntax for Nested For loop:  
for ( initialization; condition; increment ) {

   for ( initialization; condition; increment ) {
      
      // statement of inside loop
   }

   // statement of outer loop
}
Syntax for Nested While loop:  
while(condition) {

   while(condition) {
      
      // statement of inside loop
   }

   // statement of outer loop
}
Syntax for Nested Do-While loop:  
do{

   do{
      
      // statement of inside loop
   }while(condition);

   // statement of outer loop
}while(condition);
 
Note: There is no rule that a loop must be nested inside its own type. In fact, there can be any type of loop nested inside any type and to any level.
Syntax:  
do{

   while(condition) {
      
      for ( initialization; condition; increment ) {
      
         // statement of inside for loop
      }

      // statement of inside while loop
   }

   // statement of outer do-while loop
}while(condition);
Below are some examples to demonstrate the use of Nested Loops:Example 1: Below program uses a nested for loop to print a 2D matrix. 
Java
// Java program to print the elements of// a 2 D array or matrix import java.io.*; class GFG {     public static void print2D(int mat[][])    {        // Loop through all rows        for (int i = 0; i < mat.length; i++) {             // Loop through all elements of current row            for (int j = 0; j < mat[i].length; j++)                System.out.print(mat[i][j] + " ");             System.out.println();        }    }     public static void main(String args[]) throws IOException    {        int mat[][] = { { 1, 2, 3, 4 },                        { 5, 6, 7, 8 },                        { 9, 10, 11, 12 } };        print2D(mat);    }}
1 2 3 4 
5 6 7 8 
9 10 11 12
 
Example 2: Below program uses a nested for loop to print all prime factors of a number. 
Java
// Java program to print all prime factors import java.io.*;import java.lang.Math; class GFG {    // A function to print all prime factors    // of a given number n    public static void primeFactors(int n)    {        // Print the number of 2s that divide n        while (n % 2 == 0) {            System.out.print(2 + " ");            n /= 2;        }         // n must be odd at this point. So we can        // skip one element (Note i = i +2)        for (int i = 3; i <= Math.sqrt(n); i += 2) {            // While i divides n, print i and divide n            while (n % i == 0) {                System.out.print(i + " ");                n /= i;            }        }         // This condition is to handle the case when        // n is a prime number greater than 2        if (n > 2)            System.out.print(n);    }     public static void main(String[] args)    {        int n = 315;        primeFactors(n);    }}
3 3 5 7
 
adnanirshad158
loop
Java
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Stream In Java
Introduction to Java
Constructors in Java
Exceptions in Java
Generics in Java
Functional Interfaces in Java
Strings in Java
Java Programming Examples
Abstraction in Java
HashSet in Java