分支语句(if、switch)

01、流程控制语句

  • 流程控制语句:通过一些语句,来控制程序的【执行】流程

流程控制语句分类

1.顺序结构(程序默认):Java程序默认的执行流程,没有特定的语法结构,按照代码先后顺序,依次执行程序中大多数的代码都是这样执行的。

2.分支结构(if、switch)

3.循环结构(for、while、do...while)

02、if语句

第一种格式:

 

if(判断条件){
     语句体;
}

执行流程:

1.首先计算判断条件的结果

2.如果条件的结果为true就执行语句体

3.如果条件的结果为false就不执行语句体

注意事项:

1.if语句()和{}之间不要写分号

2.if语句{}中,如果是一条语句,{}可以省略不写的

3.if语句()中,无论简单还是复杂,只要是有true,fasle的结果,就可以正常执行

第二种格式:

if(判断条件){
    语句体1;
}else{
    语句体2;
}

执行流程:

1.首先计算判断条件的结果

2.如果条件的结果为true就执行语句体1

3.如果条件的结果为false就执行语句体2

第三种格式:

if(判断条件){
    语句体1;
}else if{
    语句体2;
}
....
else {
    语句体n+1;
}

执行流程:

1.首先计算判断条件1的值

2.如果值为true就执行语句体1;如果值为false就计算判断条件2的值

3.如果值为true就执行语句体2;如果值为false就计算判断条件3的值

4.。。。。

5.如果没有任何判断条件为true,就执行语句体n+1。

注意事项:

只要执行了其中的某一块的语句体,就会退出循环判断,下面的判断条件即使为true,也不再执行里面的语句体。

03、switch语句

语句格式:

switch(表达式){
    case 值1:
         语句体1;
         break;
    case 值2:
         语句体2;
         break;
    .....
    default:
         语句体n+1;
         break;
}

说明:

  • 表达式:(将要匹配的值)取值为byte、short、int、charJDK5以后可以是枚举,JDK7之后可以是String。
  • case:后面跟的是要和表达式进行比较的值(被匹配的值)。
  • break:表示中断,结束的意思,用来结束switch语句。
  • default:表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。

执行流程:

1.拿着()中将要匹配的值,跟case后面的给出的选项,进行匹配,匹配成功后就执行对应的语句体,然后由break语句来结束掉整个的switch。

2.如果给出的case值,全部匹配失败,将会执行最后的default。

注意事项:

1.case后面的值不允许重复。

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

3.switch语句()中可以接受的类型

1)基本数据类型 byte short char int

2)引用数据类型 jdk5开始,可以是枚举,jdk7开始可以是String字符串了

4.如果switch语句中,省略了break语句,将会开启case穿透现象(不会跳出switch,会继续向下执行下面的语句体,一直执行到break之前的语句体。)

扩展:JDK14开始,switch语句对case进行了特殊的支持

if语句和switch语句使用选择:

1.如果是范围性的判断查找,推荐使用if语句。

2.如果是固定值的匹配,推荐使用switch语句。

作者:有梦想的白砂糖

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值