使用标号跳出当前多重嵌套循环:
a:for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
if (i == 7) break a; //直接退出到 标记 a 处的循环体外
System.out.print(j + " * " + i + " = " + (i*j) + "\t");
}
System.out.println();
}
在以往的循环中,如果我们在内层循环想要结束整个嵌套的大循环体,仅仅使用一个
break关键字似乎是不可能做到这一点的。然而我们使用带标号的break语句就可以轻松的
控制循环语句的跳转点。
============================================================
也可以使用一个布尔变量(标量)来控制整个循环体,在内层循环改变这个
布尔变量,在外层循环判断这个变量。
int arr[][] = {{1,2,3},{4,5,6,7},{9}};
boolean found = false; //外层循环的 标量
for(int i=0;i<arr.length && !found;i++)
{
for(int j=0;j<arr[i].length;j++)
{
System.out.println(“i=” + i + “,j=” + j);
if(arr[i][j] == 5)
{
found = true; //控制外层循环的 标量
break;
}
}
}