if语句
if (条件表达式1){ //条件判断 //n多语句1 }else if(条件表达式2){ //n多语句2 }else if(条件表达式3){ //n多语句3 } ... ... else{ //n多语句n }
执行流程:条件表达式1为true则输出n多语句1,否则判断条件表达式2,如此循环,若n-1个判断中都为false,则输出else内的n多语句n
可见if用于条件判断,具有范围性,可用于对输入数据进行限制
switch语句
switch (表达式){ //表达式通常为变量,对case的语句进行匹配 case 情况1: //这里为冒号不是分号 n多语句; break; //跳出switch语句 case 情况2: n多语句; break; ... ... default: n多语句; }
工作原理:
对表达式(通常是变量)进行一次计算,把表达式的值与结构中 case 的情况n进行比较;
如果存在匹配,则执行与 case 关联的代码,代码执行后,break 语句阻止代码跳入下一个 case 中继续执行;
如果没有 case 为真,则使用 default 语句。
switch倾向对某预定数值的匹配,例如某网页中点某连接跳转到某地址,没有进行条件判断。且switch不支持float型,布尔型。
if语句和Switch语句的选择
if选择结构
基本if选择结构: 处理单一或组合条件的情况
if-else选择结构:处理简单的条件分支情况
多重if选择结构:处理复杂的条件分支情况
嵌套if选择结构:用于较为复杂的流程控制
switch选择结构
多重分支并且条件判断是等值判断的情况
if语句和switch语句的区别
if语句:
表达式的结果是boolean类型
常用于区间判断
switch:
表达式类型不能是boolean类型,可以是byte,int,char,String,枚举。
常用于等值判断
选择语句的选择:
能用switch语句实现的就一定可以使用if实现,但是反之不一定,如果是区间范围就采用if,如果是等值判断使用switch