中断控制流程语句:break、continue

流程语句在我们开发过程中经常用到,我们常用到的流程语句有if、for、while、do while、swith等。
在这些流程当中,有时候我们需要跳出流程,所以需要用到中断流程的语句,特别是多流程嵌套时,更容易用到。
中断流程语句,java中常用的是break、带标签的break和continue。
下面就举几个简单地实例,来记录下这些语句的用法。

案例一:简单地break
package test.java;

/**
 * 中断控制流程语句
 * @author Tastill
 *
 */
public class test3 {
    //break
    public static void main(String[] args) {
        int i = 1;
        int k = 1;
        //break
        while(i < 10){
            k += i;
            System.out.println("break之前  i:" + i + "  " + "k:" + k);
            if(k > 10) break;
            System.out.println("break之后  i:" + i + "  " + "k:" + k);
            i++;
            k++;
        }
       
    }   
}
这是一个简单地单循环语句,显而易见,当k>10时,会跳出该循环,不在执行后面代码。
那么既然有单循环语句,就不会有嵌套循环语句以及判断语句,古人云,言多必失,代码也是一样,越复杂,就越容易出错,所以控制流程语句嵌套很深的时候,在某种特定的情况下我们需要跳出所有控制流程,那么问题来了,JAVA支持吗?
显而易见,是支持的,这里我们就需要用到带标签的break

案例二:带标签的break
package test.java;

/**
 * 中断控制流程语句
 * @author Tastill
 *
 */
public class test3 {
    //break
    public static void main(String[] args) {
        int i = 1;
        int k = 1;

        //break break_data
        break_data:
        while(i < 10){
            k += i;
            System.out.println("break之前  i:" + i + "  " + "k:" + k);
            if(k < 100){
                System.out.println("进入k < 100循环");
                if(i+k > 20){
                    System.out.println("进入i+k > 20循环");
                    break break_data;
                }else{
                    System.out.println("进入i+k > 20 的 else 循环");
                }
            }else{
                System.out.println("进入k > 100 的 else 循环");
            };
            System.out.println("break之后  i:" + i + "  " + "k:" + k);
            i++;
            k++;
        }
       
    }
   
}
break的标签就是:break_data,注意,这里的break_data后面一定要加“:”号。
当i+k >20的时候,就会跳出所有循环,然后执行循环外的代码。

案例三:continue
package test.java;

/**
 * 中断控制流程语句
 * @author Tastill
 *
 */
public class test3 {
    //break
    public static void main(String[] args) {
        int i = 1;
        int k = 1;

        //continue
        for (int j = 0; j < 20; j++) {
            System.out.println("==========================================");
            System.out.println("i:" + i + "  " + "j:" + j);
            if(j < 5) continue;
            System.out.println("i:" + i + "  " + "j:" + j);
            j += i;
            i++;
        }
       
    }
   
}

continue语句将控制转移到了最内层循环的首部,即当j<5时,continue语句会越过当前循环的剩余部分,直接跳到循环首部,例如本案例中j<5时,continue语句直接跳转到j++语句。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值