Day5:流程控制语句

一:顺序结构

        顺序向下执行

二:分支结构

        if格式1:if (关系表达式) {                执行流程:1.先计算关系表达式的值,2.如果为true,则

                     语句体;                                              执行语句体,否则不执行  3.继续执行后面的其

                     }                                                            他语句

        ps:1.大括号的开头可以令起一行,但是建议写在第一行的末尾

                2.在语句体中,如果只有一行代码,可以不写大括号(最好不要省略)

                3.对一个布尔类型的变量进行判断,不要用==,直接把变量放在关系表达式里面

                eg:boolean flag = true;

                        if (flag) {

                                System.out.println ("flag的值是True");

                        }

        if格式2:if (关系表达式) {                                1.首先计算表达式的值

                                语句体1;                                2.如果表达式的值为true,执行语句体1

                        } else {                                             3.如果表达式的值为false,执行语句体2

                                语句体2;                                4.继续执行后面的其他语句

                        }

        if格式3:if(关系表达式1){                        1. 首先计算关系表达式1的值

                                语句体1;                            2.如果是true,就执行语句体1

                        } else if (关系表达式2) {                3.如果是false,就计算关系表达式2

                                语句体2;

                        }...                                                4. ......

                        } else {                                           5.如果以上的关系表达式都是false,执行     

                                语句体 n + 1;                        语句体n+1

                        } 

        switch格式:switch (表达式) {                        1.首先计算表达式的值

                             case 值1:                                 2.依次和case后面的值进行比较,

                                        语句体1;                          如果有对应的值,则执行对应的语句,

                                        break;                              执行到break就会停止。

                              case 值2:                                3.如果没有对应的值,则会执行default里面的

                                        语句体2;                           语句体,然后结束整个switch语句

                                        break;

                                .....

                                defult:

                                        语句体n+1;

                                        break;   

                                }

        ps:1.表达式的值可以为:byte,short,int,char,枚举(JDK5以后),String(JDK7之后)

                2.case后面的值只能是字面量,不能是变量

        switch的其他知识点

                1.default的位置和省略:位置:default的位置不一定是在最下面,也可以在上面

                                                      省略:default可以省略,不会报错,但不建议

                2.case穿透:就是语句体中没有写break导致的,首先是拿着表达式的值去匹配下面的

                                      每一个case,如果匹配到了,就执行语句体,但是如果语句体里没有

                                      break,就会导致程序一致向下执行后面的case的语句体,知道break或

                                      右边大括号为止。

                3.switch新特性:case的格式改变了,这种写法不需要break,也不会case穿透

                        case 1 :                               ->                case 1 -> {        

                                语句体;                                                语句体;

                                break;                                           }      

                                                                    ->                case 1 -> 语句体;

                4.switch和if的第三种格式的各自使用场景

                        if的第三种格式:一般用于对范围的判断

                        switch:一般用于把有限的数据列出来,任选其一

三:循环结构

        for循环:for (初始化语句;条件判断语句;条件控制语句){

                                循环体;

                        }

        while循环:初始化语句;

                           while (条件判断语句) {

                                    循环体语句;

                                     条件控制语句;    

                            }     

        for循环和while循环的区别:for循环的控制循环的变量在循环内部,当循环结束后就不能访问

                                                     for循环知道循环的次数

                                                     while循环的控制变量在循环外部,循环结束也可以访问   

                                                     while循环不知道循环的次数,只知道循环结束条件

        do...while循环:初始化语句:                        //do...while循环先循环后判断,至少执行一次

                                   do {

                                           循环体语句;

                                           条件控制语句;          

                                    }while(条件判断语句);

        无限循环:1 for (;;) { sout }

                          2 while (true) { sout }

                          3 do { sout } while (true) ;

        跳转控制:continue:跳过本次循环,继续循环

                           break:结束循环

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值