作者uopsdod (pcman)
看板Programming
标题[问题] Java label
时间Sun Dec 18 12:50:28 2016
想请问以下这个题目,程式跑的顺序是如何?
尤其是continue outer这句,不大懂此语法改变了什麽程式逻辑?
-----------------------------------------------------------------------
public class VerifyClass {
public static void main(String[] args){
int i ;
int j ;
outer: for (i = 1; i < 3; i++)
inner: for (j = 1; j <3; j++) {
if ( j == 2)
continue outer;
System.out.println( "Value for i=" + i
+ "Value for j=" + j);
}
}
}
印出来结果为:
Value for i=1 Value for j=1
Value for i=2 Value for j=1
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.200.201.79
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Programming/M.1482036630.A.646.html
※ 编辑: uopsdod (1.200.201.79), 12/18/2016 12:50:51
1F:→ CindyLinz: 如果没有 label, 这里的 continue 相当 112.121.78.5 12/18 13:19
2F:→ CindyLinz: 於 continue inner, 只能对最内层作用 112.121.78.5 12/18 13:19
3F:→ CindyLinz: 你把程式里的 j<3 改成 j<5 会比较有感 112.121.78.5 12/18 13:20
4F:→ uopsdod: 有,改成5就容易理解多了。感谢! 1.200.201.79 12/18 13:58
5F:→ uopsdod: 所以j的值才会一直是1 1.200.201.79 12/18 13:59
6F:→ CindyLinz: 嗯嗯^^ 112.121.78.5 12/18 15:18