switch
语句是 C# 中的一种控制流语句,它允许你根据变量的值执行不同的代码块。switch
语句会检查一个表达式的值,并将其与一系列 case
标签进行比较。如果找到匹配的 case
,则执行相应的代码块,直到遇到 break
语句或 switch
语句的结束。
switch
语句使得多条件分支逻辑更加清晰和易于理解。if-else
语句,switch
语句在某些情况下可以提供更好的性能,因为它可以使用跳转表(jump table)来直接定位到相应的代码块。byte
、sbyte
、short
、ushort
、int
、uint
、long
、ulong
。char
。switch
语句支持字符串类型。当你需要根据一个变量的值执行不同的代码块时,switch
语句非常有用。例如,根据用户输入的不同选项执行不同的操作。
以下是一个使用 switch
语句的示例:
using System;
class Program
{
static void Main()
{
Console.WriteLine("Enter a number (1-7):");
int day = int.Parse(Console.ReadLine());
switch (day)
{
case 1:
Console.WriteLine("Monday");
break;
case 2:
Console.WriteLine("Tuesday");
break;
case 3:
Console.WriteLine("Wednesday");
break;
case 4:
Console.WriteLine("Thursday");
break;
case 5:
Console.WriteLine("Friday");
break;
case 6:
Console.WriteLine("Saturday");
break;
case 7:
Console.WriteLine("Sunday");
break;
default:
Console.WriteLine("Invalid day");
break;
}
}
}
switch
语句不返回 Console.WriteLine
的输出原因:
switch
语句中的某个 case
没有 break
语句,导致执行了多个 case
的代码块。switch
语句的逻辑错误,导致没有匹配到任何 case
。解决方法:
case
语句块以 break
语句结束,以防止执行多个 case
的代码块。switch
表达式的值和 case
标签是否匹配。using System;
class Program
{
static void Main()
{
Console.WriteLine("Enter a number (1-7):");
int day = int.Parse(Console.ReadLine());
switch (day)
{
case 1:
Console.WriteLine("Monday");
break;
case 2:
Console.WriteLine("Tuesday");
break;
case 3:
Console.WriteLine("Wednesday");
break;
case 4:
Console.WriteLine("Thursday");
break;
case 5:
Console.WriteLine("Friday");
break;
case 6:
Console.WriteLine("Saturday");
break;
case 7:
Console.WriteLine("Sunday");
break;
default:
Console.WriteLine("Invalid day");
break;
}
}
}
希望这些信息对你有所帮助!如果你有其他问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云