0
点赞
收藏
分享

微信扫一扫

选择结构(if-else、switch)

醉东枫 2022-02-26 阅读 76

switch

语法结构

switch(int或String类型的字面值或变量){
    case int或String类型的字面值或变量 :
        java语句;
        ……
        break;
    case int或String类型的字面值或变量 :
        java语句;
        ……
        break;
    case int或String类型的字面值或变量 :
        java语句;
        ……
        break;
    ……
    default :
        java语句;
        ……
}

执行原理

1、switch的小括号内“数据”和case后面的“数据”进行一一匹配,匹配成功的分支执行。按照自上而下的顺序依次匹配。

2、匹配成功的分支执行,分支当中没有“break;”语句的话,直接会进入到下一个分支执行(不进行匹配),此现象为case穿透现象。【提供break;语句可以避免穿透】

3、匹配成功的分支执行,分支当中有“break;”语句的话,整个switch语句终止。

4、所有分支都未匹配成功,当有default时,则执行default分支当中的程序。

5、switch后面和case后面只能是int或者String类型的数据,不能探测其他类型。

        【当然byte、short,char也可以直接写到switch和case后面,因为它们可以进行自动类型转换。byte、short、char可以自动转换为int类型】

        【JDK6及之前版本,只能探测int类型】

6、case语句可以合并,如下代码

switch(int或String类型的字面值或变量){
    case int或String类型的字面值或变量 : case int或String类型的字面值或变量 :
        java语句;
}
举报

相关推荐

0 条评论