C# 使用If";二";检查同一查询的多个可能性

C# 使用If";二";检查同一查询的多个可能性,c#,if-statement,C#,If Statement,这通常是我可以很容易在网上找到的东西,但我想我在措辞上有困难,所以如果这是一个重复的问题,我道歉 我正在寻找一种更简洁的方法来对同一查询进行IF/OR检查。例如: if (sCheck == "string1" || sCheck == "string2" || sCheck == "string3") { MessageBox.Show(sCheck + " is one of the three possible strings."); } 我正在寻找一种更简洁的方法来实现同样的If

这通常是我可以很容易在网上找到的东西,但我想我在措辞上有困难,所以如果这是一个重复的问题,我道歉

我正在寻找一种更简洁的方法来对同一查询进行IF/OR检查。例如:

if (sCheck == "string1" || sCheck == "string2" || sCheck == "string3")
{
   MessageBox.Show(sCheck + " is one of the three possible strings.");
}
我正在寻找一种更简洁的方法来实现同样的If/Or。我希望这样的东西能奏效,但当然不行:

if (sCheck == "string1" || "string2" || "string3") { }

if (sCheck == ("string1" || "string2" || "string3")) { }

创建包含不同可能性的集合:

if(new[] {"string1", "string2", "string3" }.Contains(sCheck)) { }

您可以创建
字符串
的集合,然后使用
包含
方法:

List<string> myStrings = new List<string>(){"string1", "string2" , "string3"};
if (myStrings.Contains(sCheck))
{
   //Do Work
}
List myStrings=new List(){“string1”、“string2”、“string3”};
if(myStrings.Contains(sCheck))
{
//工作
}

这里可能没有什么意义,但在类似的情况下,
开关
可能很有用:

switch (sCheck)
{
case "string1":
case "string2":
case "string3":
    MessageBox.Show(sCheck + " is one of the three possible strings.");
    break;    
}

c#?@MarcinJuraszek yea中的语句中,我有更新的答案