在java中,虽然没有使用goto的程序控制结构,但依旧能在break和contine中看到一些goto的影子,这就是标签。标签的声明方式如:Lable1:
测试代码如下:
public class Test
{
public static void main(String[] args)
{
int i=0;
outer:
while (true) {
inner:
for(;i<10;i++) {
System.out.println("i= "+i);
if(i==2) {
System.out.println("continue");
continue ;
}
if(i==3) {
System.out.println("break");
i++;
break;
}
if(i==7){
System.out.println("continue inner");
i++;
continue inner;
}
if(i==8){
System.out.println("break outer");
break outer;
}
for(int k=0;k<5;k++){
System.out.println("continue inner");
continue inner;
}
}
}
}
}
输出如下:
标签的使用必须与循环相搭配,当continue到某一标签上时,会重新进入当前标签下方的循环,当break到某一标签时,会直接结束当前标签下方循环。标签相对而言用处不大,自我感觉不必强行使用。如果内层循环使用break到外层标签,直接结束外层循环,continue同理。