switch…case 语句适合于从一组互斥的分支中选择一个执行分支。其语法格式为:
switch(表达式){case 常量表达式 1: 语句 1;break;case 常量表达式 2: 语句 2;break;…case 常量表达式 n: 语句 n;break;default : 语句 n+1; break;}
功能:执行 switch 语句,首先计算 switch 表达式,然后与 case 后的常量表达式的值进行比较,执行第一个与之匹配的 case 分支下的语句。如果没有 case 常量表达式的值与之匹配,则执行 dafault 分支下的语句,如果没有 dafault 语句,则退出 switch 语句。
说明:
(1)在 case 语句后面必须有 break 语句或 goto 跳转语句,不允许从一个 case 自动遍历到其它 case,否则编译时将报错。
(2)switch 语句的控制类型,即其中控制表达式的数据类型可以是 sbyte、byte、short、
ushort、uint、long、ulong、char、string 或枚举类型。
(3)每个 case 标签中的常量表达式必须属于或能隐式转换成控制类型。如果有两个或两个以上 case 标签中的常量表达式值相同,编译时将会报错。
(4)switch 语句中可以没有 dafault 语句,但最多只能有一个 dafault 语句。