如何检查整数是否在数组中?

时间:2016-02-01 11:16:10

标签: c#

这是我创建的代码的一个例子

int[] Numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

我想要做的是一个小脚本,可以检查一个数字是否在数组中并返回一个布尔值,例如3将返回true而13将返回false否则我能想到的唯一方法就是这个< / p>

if ((UserInput == Numbers[0]) || (UserInput == Numbers[1]) || (UserInput == Numbers[2]) || (UserInput == Numbers[3]))

2 个答案:

答案 0 :(得分:2)

您可以使用LINQ扩展方法Contains

bool containsNumber = Numbers.Contains(UserInput);

如果UserInputstring,您应该先解析它:

int i;
if (int.TryParse(UserInput, out i)) // parse the string, and put it in i
{
    bool containsNumber = Numbers.Contains(i);
}
else
{
    // report to user the input is wrong
}

如果您想手动进行Contains检查,可以使用:

bool containsNumber = false;

foreach (int n in Numbers) // go over every number in the list
{
    if (n == UserInput) // check if it matches
    {
        containsNumber = true;
        break; // no need to check any further
    }
}

答案 1 :(得分:1)

bool containsNumber = Numbers.Contains(13);
相关问题