java中的“标签”

在java中,有一个叫“标签”的说法,它的作用是跳出当前的多种循环,机制类似c语言中的goto。在java中没有goto语句,goto是java中的一个保留字,至今未使用。

标签的语法格式是:

lable:

outer-iteration

{

inner-iteration

{

break;//中断内部迭代回到外部迭代

continue;//继续内部迭代

continue lable;//中断内部迭代回到外部迭代

break lable;//中断外部迭代

}

}

说了这么多我们来看一段程序:

public class LableFor
{
	public static void main(String[] args)
	{
		int i = 0;
		
		outerLable:
			for(;true;)//死循环
			{
				innerLable:
					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++;//otherwise i never gets incremented
							break;
						}
						if(i==7)
						{
							System.out.println("continue outerLable");
							i++;
							continue outerLable;
						}
						if(i==8)
						{
							System.out.println("break outerLable");
							break outerLable;
						}
						
						for(int k = 0;k<5;k++)
						{
							if(k==3)
							{
								System.out.println("continue innerLable");
								continue innerLable;
							}
						}
					}
			}
	}
}

结果如下:

i=0
continue innerLable
i=1
continue innerLable
i=2
continue
i=3
break
i=4
continue innerLable
i=5
continue innerLable
i=6
continue innerLable
i=7
continue outerLable
i=8
break outerLable 


从结果中可以看出当i==8时程序成功中断了外层循环。


记住:

一般来说在java里使用标签的唯一理由是因为有循环嵌套存在,而且相从多层嵌套中break或continue。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值