java中标签的使用(附带break和continue)

来源:互联网 发布:老克勒淘宝店是真是假 编辑:程序博客网 时间:2024/05/17 09:00

很多程序设计语言中有goto语句,goto语句的使用,使的程序变得难以读懂,尽管goto仍是Java的一个保留字,但并未在语言中得到正式使用;Java没有goto。然而,在break和continue这两个关键字的身上,我们仍然能看出一些goto的影子。它并不属于一次跳转,而是中断循环语句的一种方法。之所以把它们纳入goto问题中一起讨论,是由于它们使用了相同的机制:标签。
标签是后面跟有冒号的标识符,就像下面这样:
label1:
需要记住的重点是:在Java中需要使用标签的唯一理由就是因为有循环嵌套的存在,而且想从多层嵌套中break或者continue。

label1://can't have statements hereouter-iteration{    inner-iteration{        //...        break;//(1)        //...        continue;//(2)        //...        continue label1;//(3)        //...        break label1;//(4)    }}

(1)break会中断并跳出当前循环,回到外部迭代。
(2)continue会退回到最内层循环的开头(顶部),并且继续执行。
(3)带标签的continue会到达标签的位置,并重新进入紧接在标签后面位置的循环。
(4)带标签的break会中断并跳出标签所指的循环,break label1会回到label1处,但是不重新进入迭代,也就是说,它实际是完全中止了两个迭代。

0 0
原创粉丝点击