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"
挑战
简单创建一个名为 getDayType 的方法,它接受两个参数:
- 一个整数(
day),表示一周中的某一天(1-7) - 一个布尔值(
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));
}
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: Java 在线编译器