📜  c# swtich - C# (1)

📅  最后修改于: 2023-12-03 14:39:44.226000             🧑  作者: Mango

C# Switch

在 C# 的开发中,我们经常需要根据某个变量的不同取值,执行不同的代码块。C# 中的 Switch 语句提供了一种方便的方法来完成这项任务。

语法

下面是 Switch 语句的基本语法:

switch (variable) {
    case value1:
        //执行语句块1
        break;
    case value2:
        //执行语句块2
        break;
    case value3:
        //执行语句块3
        break;
    //其它 case
    default:
        //执行语句块n
        break;
}

其中,variable 即为需要判断的变量,value1、value2、value3 是该变量可能的取值,分别对应不同的代码块。default 用来处理变量取值不在上述范围内的情况,可以省略。

注意:每个 case 后面必须跟一个 break 语句,否则会出现“落入”现象,即将其后的所有 case 语句块都执行一遍。

示例

下面是一个简单的例子,根据用户输入的数字输出相应的星期几:

int day = 2;
switch (day) {
    case 1:
        Console.WriteLine("星期一");
        break;
    case 2:
        Console.WriteLine("星期二");
        break;
    case 3:
        Console.WriteLine("星期三");
        break;
    case 4:
        Console.WriteLine("星期四");
        break;
    case 5:
        Console.WriteLine("星期五");
        break;
    case 6:
        Console.WriteLine("星期六");
        break;
    case 7:
        Console.WriteLine("星期日");
        break;
    default:
        Console.WriteLine("输入有误");
        break;
}
案例

Switch 语句不仅可以用于基本数据类型,还可以用于枚举类型、字符串类型等。

下面是一个用于判断用户输入的操作符并执行相应的操作的例子:

Console.Write("请输入操作数1:");
int num1 = Convert.ToInt32(Console.ReadLine());

Console.Write("请输入操作数2:");
int num2 = Convert.ToInt32(Console.ReadLine());

Console.Write("请输入运算符(+、-、*、/):");
string op = Console.ReadLine();

switch (op) {
    case "+":
        Console.WriteLine("{0} + {1} = {2}", num1, num2, num1 + num2);
        break;
    case "-":
        Console.WriteLine("{0} - {1} = {2}", num1, num2, num1 - num2);
        break;
    case "*":
        Console.WriteLine("{0} * {1} = {2}", num1, num2, num1 * num2);
        break;
    case "/":
        Console.WriteLine("{0} / {1} = {2}", num1, num2, num1 / num2);
        break;
    default:
        Console.WriteLine("请输入有效的运算符");
        break;
}
总结

Switch 语句是 C# 开发中常用的一种选择结构,可以根据变量的不同取值执行不同的代码块。在使用时需注意每个 case 后面必须跟一个 break 语句,以免出现“落入”现象。