来源:http://www.imooc.com/code/1358
当需要对选项进行等值判断时,使用 switch 语句更加简洁明了。例如:根据考试的名次,给予前 4 名不同的奖品。第一名,奖励笔记本一台;第二名,奖励 IPAD 2 一个;第三名,奖励移动电源一个;最后一名奖励 U 盘一个。
执行过程:当 switch 后表达式的值和 case 语句后的值相同时,从该位置开始向下执行,直到遇到 break 语句或者 switch 语句块结束;如果没有匹配的 case 语句则执行 default 块的代码。
不得不说的几点小秘密:
1、 switch 后面小括号中表达式的值必须是整型或字符型
2、 case 后面的值可以是常量数值,如 1、2;也可以是一个常量表达式,如 2+2 ;但不能是变量或带有变量的表达式,如 a * 2
3、 case 匹配后,执行匹配块里的程序代码,如果没有遇见 break 会继续执行下一个的 case 块的内容,直到遇到 break 语句或者 switch 语句块结束 如
运行结果:
4、 可以把功能相同的 case 语句合并起来,如
5、 default 块可以出现在任意位置,也可以省略
任务
快来制作属于你的菜谱吧!
请在代码编辑器中,使用 switch 语句补全代码,设置属于你的菜谱:如果今天是周期一、三、五,则早餐吃包子,如果是周期二、四、六,则早餐吃油条,如果是周期日,则吃“主席套餐”
1 public class HelloWorld { 2 public static void main(String[] args) { 3 char today='日'; 4 5 switch (today) { 6 case '一' | '三' | '五': 7 System.out.println("吃包子"); 8 break; 9 case '二' | '四' | '六': 10 System.out.println("吃油条"); 11 break; 12 case '日': 13 System.out.println("吃主席套餐"); 14 break; 15 default: 16 break; 17 } 18 } 19 }