Java 编程思想第四章
这一章主要讲了控制执行流程的语句,if-else、switch、break、continue、for、while、do-while、foreach、return 以及不怎么实用的标签跳转,大部分都是老朋友了,在这只记录一下不太熟悉的标签跳转吧。
标签是后面跟有冒号的标识符,就像下面这样:
label1:
在 Java 中,标签起作用的唯一的地方刚好是在迭代语句之前。“刚好之前”的意思表明,在标签和迭代之间置入任何语句都不好。
break 和 continue 通常只中断当前循环,配合标签便可以中断循环,直到标签所在的地方。
代码演示:
label1:
outer-iteration{
inner-iteration{
//...
break;//(1)
//...
continue;//(2)
//...
continue label1;//(3)
//...
break lebel1;//(4)
}
}
在(1)中,break 中断了内部循环,调到外部循环(break 只能中断它所在的循环);在(2)中,continue 跳过了内部循环的剩余部分,回到内部循环起始处开始下一次循环;在(3)中,continue label1 同时中断两层循环,直接跳转到 label1 处,从外部循环开始继续执行循环;在(4)中,break label1 也是中断两层循环并跳转到 label1 处,但它不会重新进入循环,也就是直接跳出两层循环。
总结:
1.一般的 continue 会退回最内层循环的开头(顶部),并继续执行。
2.带标签的 continue 会到达标签的位置,并重新进入紧接在那个标签后面的循环。
3.一般的 break 会中断并跳出当前循环。
4.带标签的 break 会中断并跳出标签所指的循环。
注意:在 Java 里需要使用标签的唯一理由就是因为有嵌套循环存在,而且想从多层嵌套循环中 break 或 continue。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于