在C#中怎样用switch-case语句

1、C#的switch-case语句使用示例:
int week = 5;
switch (week)
{
case 1: break; //变量week的值为1 , 不做任何处理 , 结束switch语句
case 2:
case 3:
case 4:
case 5:
Console.WriteLine("今天是工作日");//当变量week的值为2,3,4,5中任意一个值时,由于其后没有关键字"break",所以会顺序执行到输出语句
break; //结束switch语句
case 6:
case 7:
Console.WriteLine("今天是休息日");//同理
break;
defalut:
Console.WriteLine("无效的输入值");
break;
}

在C#中怎样用switch-case语句

文章插图

2、C#的switch语句的语法如下:
switch ( controllingExpression )
{
case constantExpression :
statements
break;
case constantExpression :
statements
break;
...
default :
statements
break;
}
【在C#中怎样用switch-case语句】其中 , switch、case、default和break是关键字 。
3、遵守switch语句规则:
只能针对基本数据类型使用switch , 这些类型包括int和string等待 。 对于其他类型 , 则必须使用if语句 。
case标签必须是常量表达式(constantExpression) , 如42或者"42" 。 如果需要在运行时计算case标签的值 , 必须使用if语句 。
case标签必须是惟一性的表达式;也就是说 , 不允许两个case具有相同的值 。
可以连续写下一系列case标签(中间不能间插额外的语句) , 从而指定自己希望在多种情况下都运行相同的语句 。 如果像这样写 , 那么最后一个case标签之后的代码将适用于所有case 。 然而 , 假如一个标签关联了一个或多个语句 , 又没有使用break来跳出 , 那么执行就不能贯穿到后续的标签 , 而且编译器会报告一个错误 。
 
C#三元运算符
C#中有一个三元运算符“:” , 语法为:条件表达式?表达式1:表达式2;
该操作首先求出条件表达式的值(bool类型) , 为true时调用表达式1 , 为flase时调用表达式2 。 其逻辑为:“如果为真执行第一个 , 否则执行第二个 。 ”
例如:
a=3>43:4;输出为4 。
a=3<43:4;输出为3 。
 
Microsoft Docs.switch
 

    推荐阅读