/** * @author WanJl * @version 1.0 * @title Demo01 * @description 流程控制-分支语句-switch * @create 2026/7/15 */ public class Demo01 { public static void main(String[] args) { /* switch语句和if不一样,不是范围的匹配,而是针对某个值的匹配,格式: switch(变量){ case 常量1: 代码块; break; case 常量2: 代码块; break; case 常量n: 代码块; break; default: 代码块; } 如果变量的值和常量1相等,就执行对应的代码块,...如果和n相等就执行对应代码块, 如果都不相等,就执行default中代码块 */ int a=3; switch (a){ case 1: System.out.println("a=1"); break; //break的作用,是在执行完对应的代码块后,后面的代码就不要执行了,直接跳出switch case 2: System.out.println("a=2"); break; case 3: System.out.println("a=3"); break; default: System.out.println("不知道"); } /* 练习题:定义一个变量,使用switch判断1~7,分别输出 星期一~星期日 */ int b=3; switch (b) { 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; case 6: System.out.println("星期六"); break; case 7: System.out.println("星期日"); break; default: System.out.println("不知道"); } /* JDK17~21 增强的switch语句:可以使用任何的基本数据类型、字符串String、枚举 */ String day="1"; switch (day){ case "1","2","3","4","5" -> System.out.println("工作日"); case "6","7" -> System.out.println("休息日"); } // 使用switch匹配,匹配到了,就输出对应的语句 switch (day){ case "1" -> { System.out.println("星期一"); System.out.println("周一"); System.out.println("天不错"); } case "2" -> System.out.println("星期二"); case "3" -> System.out.println("星期三"); case "4" -> System.out.println("星期四"); case "5" -> System.out.println("星期五"); case "6" -> System.out.println("星期六"); case "7" -> System.out.println("星期日"); } // 使用switch匹配,匹配到了,就返回对应的值,这个值,可能要拿来做其他的操作 String dd="1"; String s=switch (dd){ case "1" -> "星期一"; case "2" -> "星期二"; case "3" -> "星期三"; case "4" -> "星期四"; case "5" -> "星期五"; case "6" -> "星期六"; case "7" -> "星期日"; default -> "不知道"; }; System.out.println("今天是"+s+",天气真不错"); } }