这通常是我可以在网上很容易找到的东西,但我认为我的措辞有问题,所以如果这是一个重复的问题我会道歉。
我正在寻找一种更简洁的方法来对同一查询进行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")) { }
答案 0 :(得分:10)
创建一个包含不同可能性的集合:
if(new[] {"string1", "string2", "string3" }.Contains(sCheck)) { }
答案 1 :(得分:3)
您可以创建string
的集合,然后使用Contains
方法:
List<string> myStrings = new List<string>(){"string1", "string2" , "string3"};
if (myStrings.Contains(sCheck))
{
//Do Work
}
答案 2 :(得分:2)
这里可能没什么意义,但在类似的情况下,switch
可能很有用:
switch (sCheck)
{
case "string1":
case "string2":
case "string3":
MessageBox.Show(sCheck + " is one of the three possible strings.");
break;
}