在 C# 编程语言中,
switch
语句是一种强大的控制结构,它允许程序根据某个表达式的值进行多路分支选择。通过
case
关键字,我们可以定义不同的条件分支,每个分支对应一个特定的值或值的范围。当
switch
表达式的值匹配某个
case
标签时,会执行相应的代码块。
基础用法
下面是一个简单的
switch
语句示例,它根据一个整数的值来打印不同的消息:
int number = 3;
switch (number)
{
case1:
Console.WriteLine("Number is 1");
break;
case2:
Console.WriteLine("Number is 2");
break;
case3:
Console.WriteLine("Number is 3");
break;
default:
Console.WriteLine("Number is not 1, 2, or 3");
break;
}
在这个例子中,
switch
语句检查
number
变量的值。根据该值,执行与相应
case
标签匹配的代码块。如果没有任何
case
标签与
number
的值匹配,则执行
default
分支。
使用范围
除了具体的值,你还可以使用范围来匹配
switch
表达式的值。这在处理数字或枚举等类型时特别有用。下面是一个使用范围的
switch
语句示例:
int score = 85;
switch (score)
{
caseint n when n >= 90:
Console.WriteLine("Excellent");
break;
caseint n when n >= 80:
Console.WriteLine("Good");
break;
caseint n when n >= 60:
Console.WriteLine("Pass");
break;
default:
Console.WriteLine("Fail");
break;
}
在这个例子中,我们使用了模式匹配(
case int n when ...
)来定义分数的范围。当
score
的值落在某个范围内时,执行相应的代码块。
使用枚举
switch
语句也常用于处理枚举类型的值。下面是一个使用枚举的
switch
语句示例:
enum Color { Red, Green, Blue }
Color myColor = Color.Green;
switch (myColor)
{
case Color.Red:
Console.WriteLine("The color is red");
break;
case Color.Green:
Console.WriteLine("The color is green");
break;
case Color.Blue:
Console.WriteLine("The color is blue");
break;
}
在这个例子中,我们定义了一个名为
Color
的枚举,并使用
switch
语句根据枚举的值打印不同的消息。
结论
C# 中的
switch
语句是一种强大的控制结构,它允许你根据表达式的值进行复杂的条件判断。通过使用具体的值、范围或枚举,你可以编写出灵活且易于理解的代码。掌握
switch
语句的用法对于编写高质量的 C# 代码至关重要。