import java.util.Scanner;
public class SwitchTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入星期");
//字符串string对应next就行,next后面无需加后缀,也可加Line
String week = sc.nextLine();
switch (week) {
//case后面得加冒号,不能加分号,后面的值可以加括号,也可以不加
case ("星期一"):
//不能直接写 "上班" , 必须写 打印出"上班"
//若直接写 "上班" , 写先要赋值一个string A ,然后打印出A
System.out.println("上班");
//baerk的作用是结束后面的语句,如果不加这句话,则会穿透下去,直到遇到break
break;
case "星期二":
//System.out.println中的ln是换行的作用,倘若要把数据打印在同一行,
//则只需把ln去掉,也可以再加个空格实现分格作用,但是要用双引号
//下面这个打印出结果为无空格的 放假睡觉
System.out.print("放假");
System.out.print("睡觉");
case"星期三":
//下面这个打印出结果为有空格的 放假 睡觉
System.out.print("放假"+" ");
System.out.print("睡觉");
break;
//default的作用是如果上面的语句不匹配,则执行下面的语句
default:
System.out.println("输入的星期有误");
}
//下面是另一种格式,定义空字符的
/*
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入星期数字");
int number1 = sc.nextInt();
String c = "";//空字符
switch (number1) {
case 1:
c = "星期一";
break;
case 2:
c = "星期二";
break;
case 3:
c = "星期三";
break;
default:
c = "没有这个星期";
break;}
System.out.println(c);
}
}
*/
//以下是新版本简化代码
//下面是JDK14及以上版本才有的:
/*
switch(week){
case "星期四","星期五","星期六":
System.out.println("没有");
break;
case "星期一","星期二":
System.out.println("还好");
default:
System.out.println("输错了");
}
*/
///下面也是JDK14及以上版本才有的:
/*
switch(week){
case "星期一" -> System.out.println("没有");
// ->后面的语句可以用大括号,也可以不用
case "星期二" -> System.out.println("也没有");
default -> System.out.println("输错了");
}
*/
}
}