语法:switch的字面值跟case的字面值相等,就执行case语句,如果所有的 case 跟switch的字面值不相等,执行 default语句。
switch(字面值){
case 字面值1:
输出语句,变量。。。
break;
case 字面值2:
输出语句,变量。。。
break;
case 字面值3:
输出语句,变量。。。
break;
...
default:
输出语句,其他。。。
}
案例一:
public class java01 {
public static void main(String[] args) {
// 周一 写代码
// 周二 看电影
// 周三 打篮球
// 周四 约会
// 周五 爬山
// 其他 不在计划范围
int day = 3; //表示周三
switch (day){
case 1:
System.out.println("写代码");
break;
case 2:
System.out.println("看电影");
break;
case 3:
System.out.println("打篮球");
break;
case 4:
System.out.println("约会");
break;
case 5:
System.out.println("爬山");
break;
default:
System.out.println("不在计划范围。。。");
}
}
}
输出结果:打篮球
案例二:case穿透(忘记写break)
如果switch语句都不写break,从成立的那个case一直穿透到最后!
public class java02 {
public static void main(String[] args) {
int day = 3; //表示周三
switch (day){
case 1:
System.out.println("写代码");
case 2:
System.out.println("看电影");
case 3:
System.out.println("打篮球");
case 4:
System.out.println("约会");
case 5:
System.out.println("爬山");
default:
System.out.println("不在计划范围。。。");
}
}
}
输出结果:打篮球
约会
爬山
不在计划范围。。。
案例三:case并列
public class java01 {
public static void main(String[] args) {
// 春天-----3月 4月 5月
// 夏天-----6月 7月 8月
// 秋天-----9月 10月 11月
// 冬天-----12月 1月 2月
int month = 7;
switch (month){
case 3: case 4: case 5: //month如果是3或者4或者5都执行春天!
System.out.println("春天");
break;
case 6: case 7: case 8:
System.out.println("夏天");
break;
case 9: case 10: case 11:
System.out.println("秋天");
break;
case 12: case 1: case 2:
System.out.println("冬天");
break;
default:
System.out.println("没有这个季节!");
}
}
}
运行结果:夏天