Java中的break和continue以及标签

Posted 真正的小明被占用了

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中的break和continue以及标签相关的知识,希望对你有一定的参考价值。

一.Java中的break,continue,goto

首先break,continue是Java中的关键字,而goto是保留字。

基于goto在c和c++中的鬼畜表现,我觉得goto可能还会长期在Java中坐冷板凳。

break:强行退出循环,不执行循环中的后续步骤。

continue:推出当前的循环,回到循环的起始点,开始一次新的循环

例子如下:

        // continue
        System.out.println("//continue:");
        for (int i = 0; i < 10; i++) {
            if (i == 5) {
                continue;
            }
            System.out.print("i=" + i + "  ");
        }
        // break
        System.out.println("\\n//break:");
        for (int i = 0; i < 10; i++) {
            if (i == 5) {
                break;
            }
            System.out.print("i=" + i + "  ");
        }

运行结果如下:

二.带标签的双层循环和break,continue

对于双层循环或多层循环break label,将直接跳转到label处,并且中断所有的循环,而continue label,将跳转到label处进行新的循环。

例子如下:

out: for (int i = 0; i < 5; i++) {
            in: for (int j = 0; j < 3; j++) {
                if (i == 3) {
                    break out;
                }
                System.out.println("i=" + i + "\\t" + "j=" + j);
            }
        }
        System.out.println("#################################");
        out: for (int i = 0; i < 5; i++) {
            in: for (int j = 0; j < 3; j++) {
                if (i == 2) {
                    continue out;
                }
                System.out.println("i=" + i + "\\t" + "j=" + j);
            }
        }

 

 

以上是关于Java中的break和continue以及标签的主要内容,如果未能解决你的问题,请参考以下文章

Java SE之break和continue标签

javabreak outer,continue outer的使用

Java中break和continue跳出指定循环

带标签的 break 和 continue (Java)

java标签是啥?continue语句跳转到标签外层怎么回事?break语句跳出标签指定代码块是指啥

为什么在OOP中使用break / continue标签是不好的做法(例如Java,C#)? [关闭]