zoukankan      html  css  js  c++  java
  • 退出嵌套的FOR LOOP循环(直接退出所有的循环)

    推出嵌套的FOR LOOP循环,有两种方法,第一种,使用GOTO语句跳出循环,跳到指定的位置,这时候,需要使用LABLE标记符;

     1 DECLARE
    2 V_COUNT NUMBER := 6;
    3 BEGIN
    4 FOR IDX1 IN 1 .. 5 LOOP
    5 DBMS_OUTPUT.PUT_LINE('first---' || IDX1);
    6 FOR IDX2 IN 1 .. 5 LOOP
    7 DBMS_OUTPUT.PUT_LINE('secord---' || IDX2);
    8 FOR IDX3 IN 1 .. 5 LOOP
    9 IF IDX3 = 1 THEN
    10 GOTO OUTER1;
    11 END IF;
    12 END LOOP;
    13 EXIT WHEN IDX2 = 2;
    14 END LOOP;
    15 EXIT WHEN IDX1 = 2;
    16 END LOOP;
    17
    18 <<OUTER1>>
    19 DBMS_OUTPUT.PUT_LINE('---------------------------');
    20 V_COUNT := 7;
    21 DBMS_OUTPUT.PUT_LINE('v_count---' || V_COUNT);
    22 END;

    结果:

    第二种方法,使用全局变量进行控制:

     1 DECLARE
    2 V_FLAG BOOLEAN := TRUE;
    3 BEGIN
    4 FOR IDX1 IN 1 .. 5 LOOP
    5 DBMS_OUTPUT.PUT_LINE('first---' || IDX1);
    6 FOR IDX2 IN 1 .. 5 LOOP
    7 DBMS_OUTPUT.PUT_LINE('secord---' || IDX2);
    8 FOR IDX3 IN 1 .. 5 LOOP
    9 IF IDX3 = 1 THEN
    10 V_FLAG := FALSE;
    11 DBMS_OUTPUT.PUT_LINE('third---' || IDX2);
    12 EXIT;
    13 END IF;
    14 END LOOP;
    15 EXIT WHEN V_FLAG = FALSE;
    16 END LOOP;
    17 EXIT WHEN V_FLAG = FALSE;
    18 END LOOP;
    19 DBMS_OUTPUT.PUT_LINE('---------------------------');
    20 DBMS_OUTPUT.PUT_LINE('exit');
    21 END;

    运行结果:

  • 相关阅读:
    典型用户和场景总结
    排球的详细记分规则
    js 实现全选
    博客搬家啦!
    leetcode #980 不同路径||| (java)
    ADV-299 宰羊 (java,过了30%)
    ADV-292 计算行列式 java
    ADV-302 秘密行动 java
    ADV-297 快速排序 java
    ADV-298 和谐宿舍2 动态规划
  • 原文地址:https://www.cnblogs.com/caroline/p/2418515.html
Copyright © 2011-2022 走看看