首页 > 解决方案 > 扩展方法不填充数组

问题描述

我想填充随机数数组,但我想用扩展方法来做到这一点,结果我只有 500 个零。

    public static IEnumerable<int> FillRandom(this IEnumerable<int> arr, int min, int max)
    {
        Random rndNum = new Random();

        foreach (var item in arr)
        {
            yield return rndNum.Next(min, max);
        }
    }


        int[] UndefinedNumbers = new int[500];
        UndefinedNumbers.FillRandom(1, 100); //Executing extension method.

输出

标签: c#.net

解决方案


你应该这样做:

public static void FillRandom(this List<int> arr,int count, int min, int max)
{
    Random rndNum = new Random();
    
    arr.Clear();
    foreach (int i = 0; i < count; count++)
    {
        arr.Add(rndNum.Next(min, max));
    }
}

List<int> temp = new List<int>();
temp.FillRandom(10, 0, 20);

推荐阅读