if else和switch的区别

1.if
1)语法结构:

if(表达式){
        方法体
    }else if{
        方法体
    }else{
        方法体
    }

表达式支持:逻辑表达式,关系表达式,任意的数据类型
2)注:任何表达式编译系统都会将其转化成逻辑值进行判断。
3)适合“条件少,逻辑型的判断”。特长是逻辑判断。
2.switch

switch(表达式){
           case 表达式1:
               方法体;
               break;
           case 表达式2:
               方法体;
               break;
           default:
               break;
       }

2)表达式支持:
基本数据类型:byte, short, char, int
包装数据类型:Byte, Short, Character, Integer
枚举类型:Enum
字符串类型:String(Jdk 7+ 开始支持)
3)适合“表达式,并不是逻辑”的情况,特长是“表达式多”
3.区别
switch case 是先计算表达式值,然后直接跳到对应的case值里面执行相应的代码。但是if语句会执行一条一条的判断语句,直到匹配到对应的值。

你可能感兴趣的:(Java)