• java中break和continue使用标记


    break

    1、结束switch
    2、结束当前的循环语句,比如for,while

    3、结合标记使用,作用于双层循环的外层循环

    如下demo输出结果为外层和内层循环交替输出

    public static void testBreak() {
            for (int i = 0; i < 3; i++) {
                System.out.println("outer" + i);
                for (int j = 0; j < 3; j++) {
                    if (j == 1) {
                        break;
                    }
                    System.out.println("inner" + j);
                }
            }
        }

    结果:

    outer0
    inner0
    outer1
    inner0
    outer2
    inner0

    作为标记使用,跳出了外层循环,外层和内层循环各输出了一次

    public static void testBreakFlag() {
            flag: for (int i = 0; i < 3; i++) {
                System.out.println("outer" + i);
                for (int j = 0; j < 3; j++) {
                    if (j == 1) {
                        break flag;
                    }
                    System.out.println("inner" + j);
                }
            }
        }

    结果:

    outer0
    inner0

    continue

    1、跳过当前循环内容的处理,继续下一个循环内容的处理

    2、结果标记使用,

    如下为continue一般使用

    public static void testContinue() {
            for (int i = 0; i < 3; i++) {
                System.out.println("outer" + i);
                for (int j = 0; j < 3; j++) {
                    if (j == 1) {
                        continue;
                    }
                    System.out.println("inner" + j);
                }
            }
        }

    输出结果,外层循环输出一次,内层循环输出两次,内层循环跳过inner1的输出,如此共循环三次

    outer0
    inner0
    inner2
    outer1
    inner0
    inner2
    outer2
    inner0
    inner2
    View Code

    使用标记

    public static void testContinueFlag() {
            flag: for (int i = 0; i < 3; i++) {
                System.out.println("outer" + i);
    
                for (int j = 0; j < 3; j++) {
                    if (j == 1) {
                        continue flag;
                    }
                    System.out.println("inner" + j);
                }
            }
    
        }

    输出结果,与不使用标记的break输出结果相同

    outer0
    inner0
    outer1
    inner0
    outer2
    inner0

    总结:

    break使用标记时,在结束内层循环的同时,也可以结束外层循环,可以对外层循环进行控制

    continue使用标记时,满足内循环条件后,跳到了外层循环的指定位置继续执行,内循环的剩下的循环不再执行,在本例中类似break,但不能认为就是和break效果完全相同的

     如果不使用break标记,也可以通过其他方式来实现出break标记的功能,如

    public static void testBreakFlagSame() {
            boolean end = false;
            for (int i = 0; i < 3; i++) {
                if (end) {
                    break;
                }
                System.out.println("outer" + i);
                for (int j = 0; j < 3; j++) {
                    if (j == 1) {
                        end = true;
                        break;
                    }
                    System.out.println("inner" + j);
                }
            }
        }

    输出结果与使用break标记相同

    outer0
    inner0
  • 相关阅读:
    日期获取以及时间转化
    ddt 接口框架数据处理调用excel 处理
    ddt 测试用例UI运用
    动态验证码处理UI自动化获取处理
    Bug Report For .Net (zz.IS2120@BG57IV3)
    中关村翠湖科技园:高端产业聚集区 (zz.IS2120@BG57IV3.T752270541 .K)
    vc6,windows 7 x64 调试 (IS2120@BG57IV3)
    Excel c#Excel文件的操作[转载]
    NUnit学习 标签、方法 记录与说明
    Excel c#Excel工作进程的创建写 与Excel文件的保存[原创] (20100205 11:09)
  • 原文地址:https://www.cnblogs.com/qq931399960/p/15686925.html
Copyright © 2020-2023  润新知