Java 嵌套循环示例

javaobject oriented programmingprogramming

Java 中的循环被称为控制语句,因为它们根据某些条件决定程序的执行流程。Java 允许循环嵌套,当我们将一个循环放在另一个循环中时,我们称之为嵌套循环。当我们需要遍历矩阵数组以及需要做任何基于模式的问题时,嵌套循环非常有用。

在本文中,我们将通过示例了解 Java 嵌套循环。

嵌套循环

我们可以为以下控制语句创建嵌套循环 -

  • For 循环

  • If else

  • While

  • Do while

  • For each

让我们通过一些示例讨论这些嵌套循环

嵌套 For 循环

它是任何编程语言中最常用的控制语句,因为它易于理解和实现。循环迭代直到给定条件为真。

语法

for (初始表达式; 条件表达式; 增量/减量表达式){
    // 要执行的代码
    for (初始表达式; 条件表达式; 增量/减量表达式) {
    // 要执行的代码
    }
}

初始表达式 − 循环开始时执行一次。

条件表达式 − 代码将一直执行,直到条件表达式为真。

增量/减量表达式 − 增加/减少循环变量。

示例

以下程序将使用嵌套 for 循环执行两个矩阵的加法。

public class Main{
   public static void main(String args[]){
      int mtr1[][] = {{2,7},
      {9,2}};
      int mtr2[][] = {{6,3},
      {5,1}};
      int add[][] = new int[2][2];
      // 嵌套 for 循环
      for (int i= 0 ; i < 2 ; i++ ){ 
         for (int j= 0 ; j < 2 ;j++ ){
            add[i][j] = mtr1[i][j] + mtr2[i][j]; 
            // Performing addition
         }
      }
      System.out.println("给定两个矩阵的总和=");
	  // 嵌套 for 循环打印结果矩阵
      for (int i= 0 ; i < 2 ; i++ ){
         for (int j= 0 ; j < 2 ;j++ ){
            System.out.print(add[i][j]+"\t");
         }
         System.out.println();
      }
   }
}

输出

给定两个矩阵的总和 =
8 10
14 3

在上面的代码中,我们取了两个大小为 2 行 2 列的矩阵'mtr1'和'mtr2'。前两个 for 循环将运行 4 次,在每次迭代中,'mtr1'和'mtr2'的值将存储在第三个矩阵'add'中。最后两个 for 循环将在屏幕上打印结果。

嵌套 if

语法

if(条件表达式){
    // 要执行的代码
    if(条件表达式){
    // 要执行的代码
    }
}

示例

public class Main {
   public static void main(String []args){
      String Fname= "Tutorials";
      String Lname= "point";
      // 嵌套 if 块
      if(Fname == "Tutorials")  {
         if(Lname == "point") { 
            System.out.println(Fname + Lname);
         } else {
            System.out.println("Last name not matched");
         }
      } else {
         System.out.println("Not able to fetch info!");
      }
   }
}

输出

Tutorialspoint

在上面的代码中,我们声明并初始化了两个字符串变量。我们采用了两个 if 条件,一个在另一个里面。在第一个 if 块中,我们检查了名字是否等于"Tutorials"。在第二个块中,我们检查了姓氏是否等于"point"。如果任何一个条件为假,则将执行 else 块。在这种情况下,两个条件都为真,因此我们得到了连接的结果。

嵌套 While 循环

语法

while (conditional expression) {
    // 代码将一直执行,直到条件表达式为真
    while (条件表达式) {
        // 代码将一直执行,直到条件表达式为真
        递增/递减表达式;
        // 递增/递减循环变量
    }
    递增/递减表达式;
    // 递增/递减循环变量
}

示例

以下程序将使用 while 循环执行两个矩阵的加法。

public class Main{
   public static void main(String args[]){
      int mtr1[][] = {{2,7},{9,2}};
      int mtr2[][] = {{6,3},{5,1}};
      int add[][] = new int[2][2];
      int i=0;
      // 嵌套 while 循环执行加法
      while(i<2){
         int j=0;
         while(j<2){
            add[i][j] = mtr1[i][j] + mtr2[i][j]; 
            j++;
         }
         i++;
      }
      System.out.println("Sum of given two matrices =");
      i=0;
      // 嵌套 while 循环打印结果
      while(i<2){
         int j=0;
         while(j<2){
            System.out.print(add[i][j]+"\t");
            j++;
         }
         System.out.println();
         i++;
      }
   }
}

输出

Sum of given two matrices =
8    10
14    3

在上面的代码中,我们遵循了与示例 1 程序中相同的逻辑,但这里我们使用了嵌套的 while 循环而不是 for 循环。同样,我们取了两个大小为 2 行 2 列的矩阵"mtr1"和"mtr2"。前两个 while 循环将运行 4 次,在每次迭代期间,"mtr1"和"mtr2"的值将存储在第三个矩阵"add"中。最后两个 while 循环将在屏幕上打印结果。

结论

循环内的循环称为嵌套循环。我们已经通过示例了解了嵌套 for 循环、嵌套 if 块和嵌套 while 循环。当我们必须对二维数组和矩阵执行操作时,使用这些循环。我们也在基于模式的问题中使用它们。


相关文章