switch语句是单条件多分支的开关语句,语法格式如下:
1 2 3 4 5 6 7 8 | switch (表达式) { case 常量值 1 :语句 1 ; break ; case 常量值 2 :语句 2 ; break ; case 常量值 3 :语句 3 ; break ; …… case 常量值n:语句n; break ; default :语句n+ 1 ; } |
switch语句中“表达式”的值可以是byte、short、int、char型,“常量值1”到“常量值n”也是byte、short、int、char型,而且要互不相同。
switch语句首先计算表达式的值,如果表达式的值和某个case后面的常量值相等,就执行该case里的语句直到碰到break语句为止。如果某个case中没有使用break语句,一旦表达式的值和该case后面的常量值相等,程序不仅执行该case里的语句,而且继续执行后继的case里的语句,直到碰到break语句为止。若switch语句中的表达式的值不与任何case的常量值相等,则执行default后面的语句。switch语句中的default是可选的,如果它不存在,并且switch语句中表达式的值不与任何case的常量值相等,那么switch语句就不会进行任何处理。
我们前面学习的if条件分支语句的共同特点是根据一个或多个条件选择执行一个分支操作,而不是选择执行多个分支操作。在switch语句中,通过合理地使用break语句,可以达到根据一个条件选择执行一个分支或多个分支操作的结果。
实例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | public class Main { public static void main(String args[]){ char grade = 'B' ; switch (grade) { case 'A' : System.out.println( "优秀" ); break ; case 'B' : System.out.println( "良好" ); break ; case 'C' : System.out.println( "及格" ); break ; default : System.out.println( "未知" ); } } } |
运行结果如下:
1 | 良好 |
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程