语法: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("没有这个季节!"); } } }
运行结果:夏天