我有这个:
if (button1.Text == "1" || button1.Text == "2" || button1.Text == "3" || button1.Text == "4")
如何将其转换为:
if (button.Text == "1" || "2" || "3" || 4")
所以我不必每次都重新输入button1.Text ==
吗?
答案 0 :(得分:9)
创建List<string>
并将所有值存储在其中。
var numbers = new List<string> { "1","2","3","4"};
然后使用Contains
方法检查列表中是否存在button1.Text
:
if(numbers.Contains(button1.Text))
此外,您可以使用HashSet
来更好更快地查找。但在这种情况下,它似乎没有必要,因为它没有产生任何显着差异。
答案 1 :(得分:1)
如果您使用一组硬编码的固定值,则执行所需操作的另一个选项是使用switch
语句。
if (button1.Text == "1" || button1.Text == "2" || button1.Text == "3" || button1.Text == "4")
{
//Some code
}
可以转入
switch(button1.Text)
{
case "1":
case "2":
case "3":
case "4":
//Some code
break;
}
并且它与button1.Text
语句链接在一起的速度一样快(或者只有一次访问||
)。