创建重复元素的List <t>的最短方法</t>

时间:2009-07-13 16:52:57

标签: c# .net .net-3.5 list

使用String类,您可以执行以下操作:

string text = new string('x', 5);
//text is "xxxxx"

创建List&lt;的最短方法是什么? T>那些是n个元素,它们都是相同的引用?

3 个答案:

答案 0 :(得分:102)

尝试以下

var l = Enumerable.Repeat('x',5).ToList();

答案 1 :(得分:2)

我所知道的最快方式是:

int i = 0;
MyObject obj = new MyObeject();
List<MyObject> list = new List<MyObject>();
for(i=0; i< 5; i++)
{
    list.Add(obj);
}

如果您想多次使用它,可以使用扩展方法。

public void AddMultiple(this List<T> list, T obj, int n)
{
    int i;
    for(i=0;i<n;i++)
    {
        list.Add(obj);
    }
}

然后你可以这样做:

List<MyObject> list = new List<MyObject>();
MyObject obj = new MyObject();
list.AddMultiple(obj, 5);

答案 2 :(得分:2)

这看起来非常简单......

for( int i = 0; i < n; i++ ) { lst.Add( thingToAdd ); }

:d