Java010-流程控制(循环结构、分支结构、顺序结构)以及break、continue关键字

一、循环结构

1、for循环

1)IDEA快捷键:fori+回车
2)格式:for(初始化变量;循环条件;迭代操作){循环体;}
3)执行流程:初始化变量,判断循环条件,为true时执行循环体,进行迭代操作,继续判断循环条件……直到为false结束循环。
4)注意点:初始化变量使用范围是for循环内;先判断后执行。

2、while循环

1)格式:while(循环条件){循环体;迭代操作;}
2)执行流程:先判断循环条件,为true时执行循环体、迭代操作,继续判断循环条件……直到为false结束循环。
3)注意点:先判断后执行;适合做死循环while(true){循环体;}

3、do-while循环

1)格式:do{循环体;迭代操作;}while(循环条件);
2)执行流程:先执行循环体、迭代操作,再判断循环条件,为true时执行循环体、迭代操作,继续判断循环条件……直到为false结束循环。
3)注意点:先执行后判断,至少执行一次循环体;格式末尾有分号。

二、分支结构

1、if分支

1)3种格式
格式1:if (条件表达式){语句;}
格式2:if (条件表达式){语句;} else {语句;}
格式3:if (条件表达式){语句;} else if (条件表达式){语句;} else {语句;}
注意:格式3可存在多个 else if (条件表达式){语句;}
2)适合场景:相对适合做区间匹配,也可做值匹配。

2、switch分支

1)格式
switch(表达式){case 值1:执行代码;break;case 值2:执行代码;break;……default:执行代码; }
注意事项:若没有break,会出现穿透现象。穿透性可用于简化代码。如下

        int time = 1;
        switch (time) {
            case 1:
            case 3:
            case 5:
                System.out.println(time * 2);
                break;
            case 0:
                System.out.println(time + 1);
                break;
            case 4:
            case 6:
            case 7:
            case 8:
                System.out.println(time);
                break;
            default:
                System.out.println("数据出错!");

2)表达式类型:支持byte、short、int、char、枚举(JDK5开始),String(JDK7开始)、integer等类型。但不支持double、float、long、Boolean。
3)适合场景:适合值匹配。

三、顺序结构

顺序结构:按代码先后顺序执行,即程序默认流程。

四、break和continue关键字

break和continue后都不能跟需执行的语句。

1、break

三种使用场景:
1)跳出并结束当前循环
2)跳出并结束switch语句
3)跳出并结束指定循环:先在循环前定义一个标签名称+“ : ”, 使用时在break后加标签名称。例子如下

        //3)跳出并结束指定循环
        A:
        for (int i = 0; i < 5; i++) {
            B:
            for (int j = 0; j < 4; j++) {
                for (int k = 0; k < 3; k++) {
                    if (i+j+k>3){
                        System.out.println("i="+i+"\tj="+j+"\tk="+k);
//                        break;
//                        break A;
                        break B;
                    }
                }
            }
        }

2、continue

两种使用场景:
1)跳出当前循环的当次执行,进入当前循环的下一次执行。
2)跳出指定循环的当次执行,进入指定循环的下一次执行:
用法与break第三种类似。例子如下

        //2)跳出指定循环的当次执行,进入指定循环的下一次执行
        A:
        for (int i = 0; i < 5; i++) {
            B:
            for (int j = 0; j < 4; j++) {
                for (int k = 0; k < 3; k++) {
                    if (i+j+k>3){
                        System.out.println("i="+i+"\tj="+j+"\tk="+k);
//                        continue;
//                        continue A;
                        continue B;
                    }
                }
            }
        }

注意:continue只能用于循环,不能用于switch分支。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值