当前位置: 代码迷 >> 综合 >> 从一个多层嵌套循环中直接跳出
  详细解决方案

从一个多层嵌套循环中直接跳出

热度:43   发布时间:2023-10-28 17:12:25.0

###问题 Java中如何从一个多层嵌套循环中退出,例如下面,有两个循环,break只能退出一个for循环,不能直接跳过第二个for循环

for (Type type : types) {  for (Type t : types2) {  if (some condition) {  // Do something and break...  break; // 这样只退出了最里的for循环  }  
}}  

###回答

可以用break+label的语法,例子如下

public class Test {  public static void main(String[] args) {  outerloop:  for (int i=0; i < 5; i++) {  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");  }  
}  

首先在for循环前加标签,如例子中的outerloop,然后在for循环内break label(如本例的outerloop),就会跳出该label指定的for循环。

  相关解决方案