帮忙分析一下这个java代码段
来源:百度知道 编辑:UC知道 时间:2024/09/25 14:34:08
public class Li3_14{
public static void main(String [] args){
outer: for(int i=1;i<10;i++){
inner: for(int j=1;j<10;j++)
if(i*j>30) break outer;
System.out.println("i="+i);
}
System.out.println("dfsdfds");
}
}
执行break outer时,i和j的值是多少``
我才学这个 不怎么会
public static void main(String [] args){
outer: for(int i=1;i<10;i++){
inner: for(int j=1;j<10;j++)
if(i*j>30) break outer;
System.out.println("i="+i);
}
System.out.println("dfsdfds");
}
}
执行break outer时,i和j的值是多少``
我才学这个 不怎么会
执行该代码结果是:i的值为4,j的值为8
归律是这样的:先固定外部代码块,执行内部循环块,直到内部代码块的循环结束,再递增外部代码块中的i值。第一次时,i值为1,j完成内部循环,不满足i*j>30。第二次,也不满足条件,直到第四次,满足条件,此时i=4,j=8
if(i*j>30) break outer
i j
5*6=30
5*7=35>30
i=5
j=7
标记
outer:
inner:
标记名加冒号.
一般 在多重循环中用到。
break outer; // 跳出”outer:“标记的循环
还有continue 也支持标记...
i=4;
j=8;
4 8
break outer
跳出outer的作用域。