选择结构(if、switch)

流程概述:程序的流程对运行结果有直接的影响,所以必须清楚每条语句的运行流程,而且还要通过控制语句的流程顺序来实现我们要完成的结构

顺序结构:从上往下按顺序来

1.if语句

第一种:

if(关系表达式){

        语句体;

}

(关系表达式成立,就执行语句体,反之不执行)

(结果没反应,因为条件不成立,a比b小)

(改成a<b就OK,条件成立,能输出结果 )

第二种:(标准if-else语句,结果二者选其一)

if(条件表达式){

        语句体1;

}

else{

        语句体2;

}

(条件表达式结果是true就执行语句一,反之执行语句二)

(10对2取模结果是0,条件表达式成立,输出语句体一的结果:偶数) 

第三种:

if(判断条件1 ){

        执行语句1;

}

else if(判断条件二){

        执行语句2;

}

....

else if (判断条件n){

        执行语句n;

}

else{

        执行语句n+1;

}

(首先看判断条件1成不成立,成立就执行语句1,不成立往下看判断条件2,判断条件2成立就执行语句2......以此类推,要是前n个条件都不成立,就执行语句n+1)

 注意括号要用英文的括号:(        不能用中文的括号:(           看起来很像但是间距不一样

最后一个else后面不用加条件

if语句替换三元运算符:

2.switch语句

switch (表达式){

        case 常量值1 :

        语句体1;

        break;

        case 常量值2 :

        语句体2;

        break;

        ........

        default:

        语句体n+1;

        break;

}

(检测表达式的结果,结果符合哪个case的值就执行哪个case的语句体,直到遇到break或者整体结束。        如果所有的case结果都不符合,就执行default语句,default负责收尾【相当于if语句里面的else】、default后面可以不加break,但是建议加上)

 (num的结果符合case 1:   所以执行语句一的内容)

注意:

1.多个case后面的值不能重复(会报错:标签重复)

2.switch后面括号里只能是基本数据类型:byte\short\char\int   和  string字符串\enum枚举

3.switch语句格式可以很灵活:前后顺序可以颠倒(不同case的顺序可颠倒、default也不一定要放最后),break可以省略(省略的话就可能出现执行了好几个case的结果)

说明:

1.如果多个case的执行语句相同,可以考虑合并

2.凡是可以使用switch case的情况,都可以用if-else代替(反之不成立)

3.写分支结构时,若二者都可使用(switch-case不复杂),优先选择switch-case,因为switch执行效率较高

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值