打破 Java 中的巢狀迴圈
Mohammad Irfan
2023年10月12日
-
在 Java 中使用
break
語句中斷內部迴圈 -
在 Java 中使用帶有標籤的
break
語句打破巢狀迴圈 -
在 Java 中使用
break
語句中斷巢狀迴圈 -
在 Java 中使用
flag
變數打破巢狀迴圈 -
在 Java 中使用
return
語句打破巢狀迴圈
本教程介紹瞭如何在 Java 中打破巢狀迴圈的方法。我們包含了一些示例程式,你可以將其作為指南。
迴圈是一種技術,它允許我們根據給定的條件以任意次數重複任何程式碼語句。Java 支援多種型別的迴圈,如 while
迴圈、do-while
迴圈、for
迴圈和 for-each
迴圈。我們也可以巢狀這些迴圈。
在本文中,你將學習如何在 Java 中打破巢狀迴圈。有幾種方法可以打破巢狀迴圈;這些包括使用 break
和 return
語句。請繼續閱讀以瞭解更多資訊!
在 Java 中使用 break
語句中斷內部迴圈
如果你想打破一個迴圈,那麼你可以使用 break
語句。僅當你將其應用於內迴圈時,此語句才會中斷內迴圈。你可以這樣做:
public class SimpleTesting {
public static void main(String[] args) {
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
System.out.println(j);
if (i == 2) {
System.out.println("loop break");
break;
}
}
System.out.println();
}
}
}
輸出:
0
1
2
3
4
0
1
2
3
4
0
loop break
0
1
2
3
4
0
1
2
3
4
在 Java 中使用帶有標籤的 break
語句打破巢狀迴圈
如果你想中斷所有迴圈,包括內部和外部迴圈,你可以使用帶有 break
語句的標籤,該標籤將切斷所有迴圈並將控制移至外部迴圈。請參考下面的示例:
public class SimpleTesting {
public static void main(String[] args) {
out:
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
System.out.println(j);
if (i == 2) {
System.out.println("loop break");
break out;
}
}
System.out.println();
}
}
}
輸出:
0
1
2
3
4
0
1
2
3
4
0
loop break
在 Java 中使用 break
語句中斷巢狀迴圈
迴圈可以是 while
、for
或 for-each
型別,我們可以在任何這些迴圈中使用 break
語句。在這個例子中,我們使用 while
迴圈並通過使用 break
語句中斷其流程。請參考下面的示例:
public class SimpleTesting {
public static void main(String[] args) {
int i = 0;
out:
while (i < 5) {
int j = 0;
while (j < 5) {
System.out.println(j);
if (i == 2) {
System.out.println("loop break");
break out;
}
j++;
}
System.out.println();
i++;
}
}
}
輸出:
0
1
2
3
4
0
1
2
3
4
0
loop break
在 Java 中使用 flag
變數打破巢狀迴圈
這種方法引入了另一種場景,我們在迴圈條件中使用變數;當條件滿足時,迴圈中斷。如果你不想使用 break
語句,此程式碼很好。這個過程也更好,因為它使程式碼更具可讀性。按照下面的程式碼塊:
public class SimpleTesting {
public static void main(String[] args) {
boolean flag = false;
for (int i = 0; i < 5 && !flag; i++) {
System.out.println(i);
if (i == 3) {
System.out.println("loop break");
flag = true;
}
}
}
}
輸出:
0
1
2
3
loop break
在 Java 中使用 return
語句打破巢狀迴圈
Java 中的 return
語句用於將響應傳送回撥用方方法。我們可以在迴圈中使用 return
語句來中斷它。它是 break
語句的替代,但它只能在某些情況下工作。請參考下面的示例:
public class SimpleTesting {
public static void main(String[] args) {
boolean isStop = iterate();
if (isStop)
System.out.println("Loop stop");
else
System.out.println("Loop not stop");
}
static boolean iterate() {
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
System.out.println(j);
if (i == 2) {
return true;
}
}
System.out.println();
}
return false;
}
}
輸出:
0
1
2
3
4
0
1
2
3
4
0
Loop stop