创建N个对象并将它们添加到列表中。

23 浏览
0 Comments

创建N个对象并将它们添加到列表中。

我有一个方法,它接受N,我想创建的对象数量,并且我需要返回一个包含N个对象的列表。

目前,我可以用一个简单的循环来实现这个:

    private static IEnumerable Create(int count, string foo)
    {
        var myList = new List();
        for (var i = 0; i < count; i++)
        {
            myList .Add(new MyObj
                {
                    bar = foo
                });
        }
        return myList;
    }

我想知道是否有另一种方法,也许使用LINQ来创建这个列表。

我尝试过:

    private static IEnumerable CreatePaxPriceTypes(int count, string foo)
    {
        var myList = new List(count);
        return myList.Select(x => x = new MyObj
            {
                bar = foo
            });
    }

但是这似乎没有填充我的列表。

我尝试将select更改为foreach,但效果相同。

我意识到列表的容量为count,而LINQ没有找到任何要迭代的元素。

        myList.ForEach(x => x = new MyObj
        {
            bar = foo
        });

有没有正确的LINQ运算符可以使用来使其工作?还是我应该坚持使用循环?

0