在数组和int之间使用运算符

时间:2016-05-03 13:50:10

标签: c# arrays int operator-keyword

我需要创建一个循环来显示所有素数直到某个数字。该号码将由用户自己输入。所以我想创建一个while循环来显示消息。只有我不能使用运算符“<”在数组和int之间。

int[] Prime = {2, 3, 5, 7, 11};

    private void btnCalculate_Click(object sender, EventArgs e)
    {
        int OutputPrime = 0;
        while (Prime < biggestPrime)
        {

        }
    }

这会在while行给出以下错误: 运营商'&lt;'不能应用于'int []'和'int'

类型的操作数

非常感谢任何帮助。 提前谢谢!

2 个答案:

答案 0 :(得分:1)

Prime是一个数组类型,它包含一些整数,所以你必须使用它的索引号访问它的值,但你试图直接访问Prime这是一个数组而不是整数,所以比较整数类型biggestPrime抛出异常你可以像这样实现

int[] Prime = {2, 3, 5, 7, 11};

private void btnCalculate_Click(object sender, EventArgs e)
    {

        int OutputPrime = 0;
        for (int i = 0; i < Prime.Length; i++)
        {
            if (Prime[i] < biggestPrime)
            {
                // do your stuff
            }
        }
    }

答案 1 :(得分:1)

Linq是你的朋友。

foreach (var prime in primes.TakeWhile(i => i <= biggestPrime))
{
}