当前位置: 代码迷 >> 综合 >> Java中的break,continue关于标签的用法
  详细解决方案

Java中的break,continue关于标签的用法

热度:88   发布时间:2024-02-21 20:55:27.0

java中的标签

Java的控制循环结构中是没有关键字goto的,这种做法有它的好处,它提高了程序流程控制的可读性,但是也有不好的地方,它降低了程序流程控制的灵活性,所以说,“上帝是公平的”。所以,Java为了弥补这方面的不足,Java提供了break和continue的标签用法。Java中的标签就是一个紧跟着“:”的标识符。与其他语言不通,Java语言的标签必须放在循环前面才有作用。下面就来看一些例子:

continue + 标签

public void continueLabelTest(){outer:for(int i = 0; i<5; i++){for(int j = 0; j<6; j++){if(j == 4){continue outer;}System.out.println(j);}System.out.println("test");}System.out.println("finish");}

日志如下:

0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
finish

我们发现外层循环的test并不会打印,continue+标签,是重新开始外层循环

break + 标签

public void breakLabelTest() {outer:for (int i = 0; i < 3; i++) {for(int j = 0; j < 5; j++){if(j==4){break outer;}System.out.println(j);}System.out.println("test");}System.out.println("finish");}

打印结果如下:

0
1
2
3
finish

我们可以看到会连同外循环一起break掉,所以"test"没有打印。