Java 基础教程

Java 面向对象

Java 高级教程

Java 笔记

java 如何跳出内嵌多层循环的方法

Java 笔记 Java 笔记


java 如何跳出内嵌多重循环的方法主要有两种,一种是利用 Java 的 label,另一种是巧妙地将相关的循环逻辑抽出到单独的方法里,然后在循环处 return 退出,但是这种方法只限定于跳出到最外层。

利用 java 的 label

outerLoop:
for (int i = 0; i < 5; i++) {
  innerLoop: 
  for (int j = 0; j < 5; j++) {
    if (i * j > 6) {
      System.out.println("Breaking");
      break outerLoop;
    }
    System.out.println(i + " " + j);
  }
}
System.out.println("Done");

以上示例 2 层循环,外层 label 用 outerLoop 标记,内层 label 用 innerLoop 标记,跳出时用 break 指定要跳出到的 label 层。

封装方法里 return

将部分循环代码从主业务逻辑中抽出一个方法,然后通过 return 跳出,但这个只限定于退出到最外层。

public static void loop(...) {
  for (int i = 0; i < 5; i++) {
    for (int j = 0; j < 5; j++) {
      if (i * j > 6) {
        System.out.println("Breaking");
        return;
      }
      System.out.println(i + " " + j);
    }
  }
}