在C#中,switch
语句的每个分支在编译时都必须有一个明确的常量表达式。这意味着你不能直接在switch
语句中使用像null
、变量或复杂的逻辑表达式这样的值,因为这些在编译时无法确定。
然而,你可以使用default
关键字来实现类似默认操作的功能。default
分支会在switch
语句中没有匹配到任何其他分支时执行。这可以看作是switch
的“默认”操作。
下面是一个简单的例子:
int number = 3;
switch (number)
{
case 1:
Console.WriteLine("Number is 1");
break;
case 2:
Console.WriteLine("Number is 2");
break;
default:
Console.WriteLine("Number is neither 1 nor 2");
break;
}
在这个例子中,如果number
的值不是1或2,那么default
分支会被执行,输出“Number is neither 1 nor 2”。
需要注意的是,虽然default
分支可以看作是switch
的默认操作,但它并不是switch
语句的一部分,而是switch
语句的一个可选部分。另外,default
分支并不一定要放在switch
语句的最后,你可以根据需要将其放在任何位置。但是,通常将default
分支放在最后是一种良好的编程习惯,这样可以确保在没有匹配到任何其他分支时,程序会执行最可能的操作。