switch(C# 参考)

来源:互联网 发布:风险判定矩阵表 编辑:程序博客网 时间:2024/05/01 05:08
switch(C# 参考) 

 

switch 语句是一个控制语句,它通过将控制传递给其体内的一个 case 语句来处理多个选择和枚举。例如:

int caseSwitch = 1;switch (caseSwitch){    case 1:         Console.WriteLine("Case 1");        break;    case 2:        Console.WriteLine("Case 2");        break;    default:        Console.WriteLine("Default case");        break;}
备注备注

控制传递给与开关的值匹配的 case 语句。switch 语句可以包括任意数目的 case 实例,但是任何两个 case 语句都不能具有相同的值。语句体从选定的语句开始执行,直到 break 将控制传递到 case 体以外。在每一个 case 块(包括上一个块,不论它是 case 语句还是 default 语句)的后面,都必须有一个跳转语句(如 break)。但有一个例外,(与 C++ switch 语句不同)C# 不支持从一个 case 标签显式贯穿到另一个 case 标签。这个例外是当 case 语句中没有代码时。

如果没有任何 case 表达式与开关值匹配,则控制传递给跟在可选 default 标签后的语句。如果没有 default 标签,则控制传递到 switch 以外。

示例示例
// statements_switch.csusing System;class SwitchTest {    static void Main()    {        Console.WriteLine("Coffee sizes: 1=Small 2=Medium 3=Large");         Console.Write("Please enter your selection: ");         string s = Console.ReadLine();         int n = int.Parse(s);        int cost = 0;        switch(n)        {        case 1:            cost += 25;            break;        case 2:            cost += 25;            goto case 1;        case 3:            cost += 50;            goto case 1;        default:            Console.WriteLine("Invalid selection. Please select 1, 2, or 3.");            break;        }        if (cost != 0)        {            Console.WriteLine("Please insert {0} cents.", cost);        }        Console.WriteLine("Thank you for your business.");    }}

输入

2

示例输出

Coffee sizes: 1=Small 2=Medium 3=LargePlease enter your selection: 2Please insert 50 cents.Thank you for your business.

下面的示例显示了空 case 标签可以从一个 case 标签贯穿到另一个。

// statements_switch2.csusing System;class SwitchTest {    static void Main()    {        int n = 2;        switch(n)         {            case 1:            case 2:             case 3:                 Console.WriteLine("It's 1, 2, or 3.");                break;         default:             Console.WriteLine("Not sure what it is.");            break;         }    }}

输出

It's 1, 2, or 3.
代码讨论代码讨论
  • 在前面的示例中,整型变量 n 用于 switch case。注意还可以直接使用字符串变量 s。在这种情况下,可以以下列方式使用 switch case:

          switch(s){    case "1":        // ...    case "2":        // ...}
C# 语言规范C# 语言规范

有关更多信息,请参见 C# 语言规范中的以下各章节:

  • 5.3.3.6 switch 语句

  • 8.7.2 switch 语句

请参见请参见

参考

C# 关键字
if-else(C# 参考)

概念

C# 编程指南

其他资源

C# 参考
The switch Statement
 
原创粉丝点击