ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
这节我们看一下判断结构中的switch语句,也就是选择语句. switch语句的格式如下: ~~~ switch(表达式)//这里的表达式只直持byte short int char这四种类型 { case 取值1: 执行语句; break; case 取值2: 执行语句; break; ...... default: 执行语句; break; } ~~~ 注意表达式只直持byte,short,int和char这四种类型. 对于switch语句来说,无论表达式是什么,都会从第一个case开始执行,并且一般每case中都有break语句. default语句可以省略,但一般不这么做,当case中没有对应的结果,就执行default语句. 记住:default语句可以放任case的位置,但是执行的时候defualt语句都是最后执行. 下面我们看一个switch用法的例子 ~~~ class SwitchTest { public static void main(String[] args) { /* 用户输入的数据对应的出星期. */ int week = 5;//随意值 switch(week)//判断输入的数字,到下面的case中找答案,找到之后执行对应case中的语句. { case 1: System.out.println(week+"对应的是星期一"); break; case 2: System.out.println(week+"对应的是星期二"); break; case 3: System.out.println(week+"对应的是星期三"); break; case 4: System.out.println(week+"对应的是星期四"); break; case 5: System.out.println(week+"对应的是星期五"); break; case 6: System.out.println(week+"对应的是星期六"); break; case 7: System.out.println(week+"对应的是星期七"); break; default: System.out.println(week+"没有对应的星期"); break; } /* 季节 */ int month = 6; switch(month) { case 3: case 4: case 5: System.out.println(month+"月是春季"); break; case 6: case 7: case 8: System.out.println(month+"月是春季"); break; case 9: case 10: case 11: System.out.println(month+"月是春季"); break; case 12: case 1: case 2: System.out.println(month+"月是春季"); break; default: System.out.println(month+"月没有对应的季节"); break; } } } ~~~ 和上一节的例子对比,我们看到if语句和switch语句都实现了相同的季节选择,那我们就说说这两种语句的区别. if: 1.对具体的值进行判断 2.对区间判断 3.对运算结果是boolean类型的表达式进行判断 switch: 1.对具体的值进行判断 2.值的个数通常是固定的 3.对于几个固定的值判断,建议使用switch语句,因为swich语句会将具体的答案都加载进内在 4.效率相对高一点 5.功能性较差 6.书写麻烦