目录
作用
switch条件语句也是一种很常见的选择语句,和if条件语句不同,他只能针对某个表达式值做出判断,从而决定程序执行哪一段代码。
实现原理
在switch语句中使用switch关键字来描述一个表达式,使用case关键字来描述和表达式结果比较的的目标值,当表达式的值和某个目标值匹配时,会执行对应case下的语句。
语法格式
- switch语句中的表达式只能是byte、short、char、int类型的值,如果传入其他类型的值,程序会进行报错。在JDK5.0中引入enum枚举可以作为witch语句中的表达式的值;在JDK7.0引入witch语句可以接收一个String类型的值。
- 在使用switch过程中,如果多个case条件后面的执行语句是一样的,则执行语句只需书写一次即可,这是一种简写的方式。
switch(表达式){
case 目标值1:
执行语句1;
break; //break作用:跳出switch语句。
case 目标值2:
执行语句2;
break;
.
.
.
case 目标值n:
执行语句n;
break;
default: //default作用:当case中找不到匹配的值时,就会执行default后的语句。
执行语句n+1;
break;
}
实例
实现功能:
根据给出的学生分数(0~100),判断学生的等级:
>=90 -----A
>=80 -----B
>=70 -----C
>=60 -----D
<60 -----Epublic class TestSw{ public static void main(String[] args){ //给出学生成绩 int score=97; //根据成绩判断学生等级 switch(score/10){ case 1: case 2: case 3: case 4: case 5: System.out.println("E"); break; case 6: System.out.println("D"); break; case 7: System.out.println("C"); break; case 8: System.out.println("B"); break; case 9: case 10: System.out.println("A"); break; default: System.out.println("成绩输入错误"); break; } } }
运行结果:
switch语句与if多分支语句区别
表达式是等值判断的话——>if ,switch都可以
如果表达式是区间判断的情况——>if最好