在c#中使用多个常量表达式切换语句.可能吗?

Amr*_*mra 21 c# switch-statement

可能重复:
Switch中的多个案例:

是否可以执行多个常量表达式切换语句

switch (i) {
   case "run","notrun", "runfaster": //Something like this.
      DoRun();
      break;
   case "save":
      DoSave();
      break;
   default:
      InvalidCommand(command);
      break;
   }
Run Code Online (Sandbox Code Playgroud)

Red*_*ter 44

是的,确实如此.您可以为同一部分使用多个案例标签:

switch (i) 
{  
    case "run": 
    case "notrun":
    case "runfaster":   
        DoRun();  
        break;  
    case "save":  
        DoSave();  
        break;  
    default:  
        InvalidCommand(command);  
        break;  
}  
Run Code Online (Sandbox Code Playgroud)

  • 我注意到你将它概念化为C风格的开关,其中存在"跌落"并且标签之间的间隙可以是空的.在C#中考虑它的一个更好的方法是*每个部分都有一个或多个标签*和*部分之间没有掉落*. (2认同)
  • 此外,虽然我们很挑剔,但案例标签是“案例标签”,而不是“案例陈述”。它们不是陈述;他们不合法*任何地方*声明是合法的。 (2认同)