switch 语句
本课属于 Coddy Java 学习旅程的“基础知识”单元。第 29 课,共 73 课。
switch 语句就像多分支的 if 语句。它不会只判断一个条件,而是会将变量的值与多个分支进行比较,并运行匹配分支对应的代码。
下面是 switch 语句的基本结构:
switch (variable) {
case value1:
// 如果 variable 等于 value1,就执行此处的代码
break;
case value2:
// 如果 variable 等于 value2,就执行此处的代码
break;
// ... 更多分支
default:
// 如果没有匹配的分支,就执行此处的代码
}switch关键字后面是在括号中要测试的变量。- 每个
case都表示变量的一个可能值。 - 如果变量与某个
case的值匹配,就会执行该case中的代码。
break语句非常重要;它会在执行完某个 case 后退出switch。如果没有它,程序就会继续执行下一个 case。defaultcase 是可选的,如果没有其他 case 匹配,就会执行它。
来看一个例子:
int day = 3;
String dayName;
switch (day) {
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
// ... 其他日期的 case
default:
dayName = "Invalid day";
}你还可以将多个 case 合并到一起:
int day = 3;
String dayName;
switch (day) {
case 1:
case 2:
case 3:
dayName = "Start of week";
break;
// ……其他日期对应的 case
default:
dayName = "Invalid day";
}挑战
入门创建一个程序,输入月份编号(1 表示一月,2 表示二月,以此类推),并输出该月份所属的季节。使用 switch 语句实现逻辑。
季节及其对应的月份如下:
Winter:十二月(12)、一月(1)、二月(2)Spring:三月(3)、四月(4)、五月(5)Summer:六月(6)、七月(7)、八月(8)Autumn:九月(9)、十月(10)、十一月(11)
对于其他月份编号,输出 "Invalid month"。
亲手试试
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int month = scanner.nextInt();
String season = "";
// 在下方编写你的代码
System.out.println(season);
}
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: Java 在线编译器