C# 错误 ;2 ;操作员'||';无法应用于类型为';字符串';和';字符串';
Visual Studio告诉我无法在交换机中应用or语句 我能把它应用到我的开关上吗C# 错误 ;2 ;操作员'||';无法应用于类型为';字符串';和';字符串';,c#,console,C#,Console,Visual Studio告诉我无法在交换机中应用or语句 我能把它应用到我的开关上吗 Second_Chance_2 = System.Console.ReadLine(); switch (Second_Chance_2) { case "": Console.WriteLine("Err
Second_Chance_2 = System.Console.ReadLine();
switch (Second_Chance_2)
{
case "":
Console.WriteLine("Error");
break;
case "Alpha Area" || "alpha area":
System.Console.WriteLine("Now The Real Game Begins");
break;
default:
Console.WriteLine("Error");
break;
}
此
|
是逻辑or运算符,只能应用于可计算为布尔值的布尔值或表达式
话虽如此,你只能写作
a || b
当a
和b
都属于bool
类型或计算为bool
的表达式时
尽管如此,这个
case "Alpha Area" || "alpha area":
无效
您可以实现以下目标:
case "Alpha Area":
case "alpha area":
当我们想要一个
开关
在两个或多个不同情况下转到同一分支时,我们会这样做。您的语法错误,这是:
case "Alpha Area" || "alpha area":
应该是:
case "Alpha Area":
case "alpha area":
或者,您也可以将开关字符串转换为小写,以便只有一个case语句:
switch (Second_Chance_2.ToLowerInvariant())
{
...
case "alpha area":
以后,请尝试发布一个简短但完整的程序来演示您的问题。您已经发布了超过150行缩进严重的代码,其中很少有代码与当前的问题相关。如果你发现你需要在你的文章中添加额外的词,这很好地表明你没有提供足够的关于你想要达到的目标的信息-不要只是键入垃圾。可能的重复