break label和continue label
2015-07-22 20:44
597 查看
@Test public void continueLbaelTest() { label0: System.out.println("label1"); label1: for (int i = 0; i < 4; i++) { System.out.println("label2 "); label2: for (int j = 0; j < 4; j++) { System.out.println("label3 "); label3: for (int k = 0; k < 4; k++) { System.out.println("label4 "); label4: if (j == k) { continue label2; } System.out.println("i = " + i + " , j = " + j + " , k = " + k); } } } } @Test public void breakLabelTest(){ label0: System.out.println("label1"); label1: for (int i = 0; i < 4; i++) { System.out.println("label2 "); label2: for (int j = 0; j < 4; j++) { System.out.println("label3 "); label3: for (int k = 0; k < 4; k++) { System.out.println("label4 "); label4: if (j == k) { break label4; } System.out.println("i = " + i + " , j = " + j + " , k = " + k); } } } }
对于continue来说,label只能位于每条循环语句之前,且紧挨着。例如:continueLbaelTest()中的label1、label2、label3都Ok,但是label0和label4是违背语法的。
对于break来说,[b]label位于每条循环语句之前,且紧挨着,但使用起来比continue宽松一些。例如:breakLbaelTest()中的label1、label2、label3、label4都Ok,但是label0是违背语法的。且如果使用break
label4; 那么等价于 注释掉break label4;语句。[/b]
相关文章推荐
- [Leetcode]-Unique Paths II
- Message Queue基本使用说明
- 多校第一场 1010 hdu 5297 Y sequence(容斥+二分)
- Snail—UI学习之UIButton实现界面跳转及属性传值
- Snail—UI学习之得到某组件的方法
- HDU 5288 OO’s Sequence(数学啊 多校2015)
- [Leetcode]-Unique Paths
- 每天一个小知识点10(jQuerMobile总结一)
- OO’s Sequence
- 仿JD商城UI布局达到90%
- HDU5288.OO’s Sequence(多校第一题)
- 1151 - Buy or Build
- hdu 5288 OO’s Sequence(15多校第一场1001)
- Snail—UI学习之UIButton
- HDU 5288——OO’s Sequence——————【技巧题】
- Android blueZ HCI(一个):hciconfig实施和经常使用
- 数据类型转换 和 break,continue语句
- 猫猫学iOS 之微博项目实战(3)微博主框架-UIImage防止iOS7之后自动渲染_定义分类
- PHP生成百万个UID存入文件、插入数据库
- error:unknow filesystem grub rescue