Avatar ·

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,但不知道如何将其应用于多个值。请告诉我如何正确编写这样的代码。