C# switch 语句中一个 case 包含多个选项 — 如何正确实现?
大家好。我刚开始学习 C#,在使用 switch 语句时遇到了问题。我需要让同一个代码块针对变量的多个不同值执行。例如,我正在编写一个简单的程序,根据数字判断星期几(1 代表星期一,2 代表星期二,等等)。但我需要让周末(星期六和星期日)输出一条消息,而工作日输出另一条消息。
我尝试这样写:
```csharp
int day = 6;
switch (day)
{
case 1:
case 2:
case 3:
case 4:
case 5:
Console.WriteLine("工作日");
break;
case 6:
case 7:
Console.WriteLine("周末");
break;
default:
Console.WriteLine("无效的日期");
break;
}
```
这样是可行的,但有人告诉我,在 C# 的新版本中有更优雅的方式。我听说过 pattern matching,但不知道如何将其应用于多个值。请告诉我如何正确编写这样的代码。