Menu
CoddyTech

Switch 表达式

本课属于 Coddy Java 学习旅程的“逻辑与流程”单元。第 36 课,共 59 课。

switch 表达式是一项功能,可以让你编写更简洁的 switch 语句,并直接返回值。我们来看看它是如何工作的。

创建一个返回值的基本 switch 表达式:

int number = 1;
String message = switch(number) {
   case 1 -> "One";
   case 2 -> "Two";
   default -> "Other";
};

运行上面的代码后,message 变量包含:

"One"

你也可以一起处理多个情况:

int day = 2;
String type = switch(day) {
   case 1, 2, 3, 4, 5 -> "Weekday";
   case 6, 7 -> "Weekend";
   default -> "Invalid day";
};

运行上述代码后,type 变量的值为:

"Weekday"

challenge icon

挑战

简单

创建一个名为 getDayType 的方法,它接受两个参数:

  1. 一个整数(day),表示一周中的某一天(1-7)
  2. 一个布尔值(abbreviated),用于决定返回格式

该方法应使用 switch 表达式返回日期类型:

  • 对于第 1-5 天(星期一到星期五):如果不使用缩写,则返回 "WORKDAY";如果使用缩写,则返回 "WKD"
  • 对于第 6-7 天(星期六和星期日):如果不使用缩写,则返回 "WEEKEND";如果使用缩写,则返回 "WKND"
  • 对于任何其他数字:如果不使用缩写,则返回 "INVALID";如果使用缩写,则返回 "INV"

亲手试试

import java.util.Scanner;

public class Main {
    public static String getDayType(int day, boolean abbreviated) {
        // 在这里编写你的代码
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int day = Integer.parseInt(scanner.nextLine());
        boolean abbreviated = Boolean.parseBoolean(scanner.nextLine());
        
        System.out.println(getDayType(day, abbreviated));
    }
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

逻辑与流程中的所有课

自己练习: Java 在线编译器