打破 Java 中的巢狀迴圈

Mohammad Irfan 2023年10月12日
  1. 在 Java 中使用 break 語句中斷內部迴圈
  2. 在 Java 中使用帶有標籤的 break 語句打破巢狀迴圈
  3. 在 Java 中使用 break 語句中斷巢狀迴圈
  4. 在 Java 中使用 flag 變數打破巢狀迴圈
  5. 在 Java 中使用 return 語句打破巢狀迴圈
打破 Java 中的巢狀迴圈

本教程介紹瞭如何在 Java 中打破巢狀迴圈的方法。我們包含了一些示例程式,你可以將其作為指南。

迴圈是一種技術,它允許我們根據給定的條件以任意次數重複任何程式碼語句。Java 支援多種型別的迴圈,如 while 迴圈、do-while 迴圈、for 迴圈和 for-each 迴圈。我們也可以巢狀這些迴圈。

在本文中,你將學習如何在 Java 中打破巢狀迴圈。有幾種方法可以打破巢狀迴圈;這些包括使用 breakreturn 語句。請繼續閱讀以瞭解更多資訊!

在 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 語句中斷巢狀迴圈

迴圈可以是 whileforfor-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

相關文章 - Java Loop