五分钟了解continue,break, return 的区别

概述:

continue,break, return 来跳出或结束循环。那么这三个具体有什么区别呢?什么时候该用什么呢?

区别

  1. break : 跳出当前循环体,继续执行后面的代码。比如跳出当前 for 循环。

注意:break 还可以跳出指定循环。看代码吧

  /**
     * 使用break 跳处到标记 for循环层
     */
    private static void outerLooper() {
        tohere:
        for (int i = 0; i < 5; i++) {
            System.out.println("外成循环层循环i=" + i);
            for (int j = 0; j < 4; j++) {
                if (j == 2) {
                    System.out.println("内层循环j=" + j);
                    break tohere;
                }
            }

        }
    }
  1. continue: 结束本次循环。继续执行下次循环。
 /**
     * 使用Continue 结束本次循环,接着执行后面的循环
     */
    private static void continueeLooper() {

        for (int i = 0; i < 5; i++) {
            System.out.println("Continue外成循环层循环i=" + i);
            for (int j = 0; j < 4; j++) {
                if (j == 2) {
                    continue;
                }
                System.out.println("Continue内层循环j=" + j);
            }

        }
    }

注意: 同 break 一样,continue 也可以用标记的方式,跳到指定循环体。代码如下

/**
 * 使用Continue 结束本次循环,接着执行后面的循环
 * 得到 j ==2 的时候就跳出到外层循环,继续执行下个循环
 */
private static void continueLooperFlag() {
    outer:
    for (int i = 0; i < 5; i++) {
        System.out.println("跳到指定外成循环层循环i=" + i);
        for (int j = 0; j < 4; j++) {
            if (j == 2) {
                continue outer;
            }
            System.out.println("跳到指定循环内层循环j=" + j);
        }

    }
}
  1. return: 结束整个方法
  /**
     * 使用return 结束方法
     */
    private static void returnLooper() {

        for (int i = 0; i < 5; i++) {
            System.out.println("return外成循环层循环i=" + i);
            for (int j = 0; j < 4; j++) {
                if (j == 2) {
                    return;
                }
                System.out.println("return内层循环j=" + j);
            }

        }
    }
    原文作者:ifjgm
    原文地址: https://www.jianshu.com/p/6b0b05ab140c
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞