1:java中的标签;
标签是后面跟有冒号的标识符,就像下面这样:
outer:
在java中,标签起作用的唯一的地方刚好是在迭代语句之前,意思表面,在标签和迭代之间置入任何语句都不好。而在 迭代之前设置标签的唯一理由是:我们希望在其中 嵌套另外一个迭代或者一个开关,这是由于break和continue关键词 通常只中断当前循环,但若随标签一起使用,他们就会中断循环,直到标签所在的地方:而把标签放 在break或者 continue之后就可以选择继续执行标签或者跳出标签。带标签的continue 会到达标签的位置,并重新进入紧接在那个标签后面的循环;带标签的break会中断并跳出标签所指的循环。如下示例:
public class LibalTest { public static void main(String[] args) { int i=0;outer:while(true){ System.out.println("Outer while loop"); while(true){ i++; System.out.println("i="+i); if(i==1){ System.out.println("continue"); continue; } if (i==3) { System.out.println("continue outer");continue outer;} if (i==5) { System.out.println("break");break;} if (i==7) { System.out.println("break outer"); break outer;} }} } }
输出结果为:
Outer while loop i=1 continue i=2 i=3 continue outer Outer while loop i=4 i=5 break Outer while loop i=6 i=7 break outer
在java中使用标签的唯一理由就是因为有循环嵌套存在,而且想从多层嵌套中break或continue