我可以在开关语句中使用变量吗?
本文关键字:变量 开关 语句 我可以 | 更新日期: 2023-09-27 17:55:46
我正在编写一个基于文本的冒险,但遇到了问题。我正在尝试制作一个 switch 语句案例来处理您想要的每个检查操作,并且到目前为止正在为我的代码提供这个:
case "examine" + string x:
//this is a method that I made that makes sure that it is an object in the area
bool iseobj = tut.Check(x);
if (iseobj)
x.examine();
else
Console.WriteLine("That isn't an object to examine");
break;
如何在 case
语句中使用变量?我希望任何以"examine"+(x)开头的字符串来触发大小写。
您的方案比 switch
语句更适合if-else
语句。在 C# 中,switch
只能计算值,而不能计算表达式。这意味着您不能执行以下操作:
case input.StartsWith("examine"):
但是,您可以使用if
语句来执行此操作!请考虑执行以下操作:
if (input.StartsWith("examine"))
{
//this is a method that I made that makes sure that it is an object in the area
bool iseobj = tut.Check(x);
if (iseobj)
x.examine();
else
Console.WriteLine("That isn't an object to examine");
}
else if (...) // other branches here