image.png
    分支结构之二:switch-case
    1.格式
    switch(表达式){
    case 常量1:
    执行语句1;
    break;
    case 常量2:
    执行语句2;
    break;
    ……
    default:
    }
    image.png
    default(默认)相当于else
    根据switch表达式中的值,依次匹配各个case中的常量。一旦匹配成功,则进入相应case结构中,调用其执行语句。 当调用完执行语句以后,则仍然继续向下执行其他case结构中的执行语句,直到遇到break关键字或此switch-case结构末尾为止。
    break,可以使用在switch-case结构中,表示一旦执行到此关键字,就跳出switch-case结构
    switch结构中的表达式,只能是如下的6种数据类型之一:byte、short、char、int、枚举类型(JDK5.0新增)、String类型(JDK7.0新增)
    case之后只能声明常量。不能声明范围
    break关键字是可选的
    default: 相当于if-else结构中的else
    default结构式可选的,而且位置是灵活可变的
    如果switch-case结构中的多个case的执行语句相同,则可以考虑合并。
    image.png//这是错误的

    总结:
    凡是可以使用switch—case的结构,都可以转换为if-else。反之,不成立。
    我们写分支结构时,我们优先选择使用switch-case。 原因: switch-case的执行效率稍高。