Java 嵌套循环示例
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 循环。当我们必须对二维数组和矩阵执行操作时,使用这些循环。我们也在基于模式的问题中使用它们。