switch
是编程中常用的 条件控制语句,用于根据不同的条件执行不同的代码块。以下是不同编程语言中 switch
的用法(以常见语言为例):
1. C/C++/Java/JavaScript 中的 switch
switch (表达式) {
case 值1:
// 当表达式等于值1时执行
break;
case 值2:
// 当表达式等于值2时执行
break;
default:
// 当没有匹配的 case 时执行
break;
}
示例:根据数字输出星期几
int day = 3;
switch (day) {
case 1:
printf("星期一");
break;
case 2:
printf("星期二");
break;
case 3:
printf("星期三"); // 会执行这里
break;
default:
printf("无效数字");
break;
}
注意事项:
break
关键字:用于跳出switch
,若省略会导致“穿透”(继续执行下一个case
)。default
:可选的默认分支,无匹配时执行。
2. Python 中的 match-case
(Python 3.10+)
Python 3.10 引入了 match-case
,功能类似 switch
:
match 表达式:
case 值1:
# 匹配值1时执行
case 值2:
# 匹配值2时执行
case _:
# 默认分支
示例:
day = 3
match day:
case 1:
print("星期一")
case 2:
print("星期二")
case 3:
print("星期三") # 会执行这里
case _:
print("无效数字")
3. 其他语言(如 C#)
用法类似 C/Java,但支持更多类型(如字符串):
string fruit = "apple";
switch (fruit) {
case "apple":
Console.WriteLine("苹果");
break;
case "banana":
Console.WriteLine("香蕉");
break;
}
常见问题
穿透问题:
如果忘记写break
,程序会继续执行下一个case
的代码,直到遇到break
或结束。int x = 1;
switch (x) {
case 1:
printf("A"); // 会输出 A,但因为没有 break,继续执行下一个 case
case 2:
printf("B"); // 输出 B
break;
}
适用范围:
switch
通常用于 等值判断,复杂条件建议用if-else
。
如果问题是指 任天堂 Switch 游戏机 的使用方法,请补充说明!