Array.IndexOf与给定索引问题的值

时间:2017-08-11 13:10:58

标签: c# arrays indexof

我试图遍历给定的数组并查找其中有多少重复值。它的工作方式是通过一个嵌套循环检查数组中的所有元素,并确保它不会升高计数器,如果它在同一个索引上。但问题是,它永远不会重要! 现在要么我不理解valueOf vs indexOf的概念,要么我完全迷失了。

function validateUserName(c: FormControl) {
    ...
    return {
        'validateUserName': {
            tooShort: true,
            spacesExist: true,
            numbersExist: true
        }
    }
}

1 个答案:

答案 0 :(得分:1)

您不需要使用Array.IndexOf()功能。

例如:

int[] myArr = new int[] { 10, 5, 5, 5};
int counter = 0;
List<int> dups = new List<int>();

for (int i = 0; i < myArr.Length; i++)
{
    for (int j = 0; j < myArr.Length; j++)
        {
            if (i != j && myArr[i] == myArr[j] && !dups.Contains(i))
            {
                dups.Add(j);
                counter++;
            }
        }
}

Console.WriteLine("There are {0} repeating values in the array.", counter);


// Output: There are 2 repeating values in the array.