Ответ 1
Попробуйте выполнить
var l = Enumerable.Repeat('x',5).ToList();
С классом String вы можете сделать:
string text = new string('x', 5);
//text is "xxxxx"
Какой самый короткий способ создать список <T> , который заполнен элементами n
, которые являются одинаковыми ссылками?
Попробуйте выполнить
var l = Enumerable.Repeat('x',5).ToList();
Самый быстрый способ, который я знаю:
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);
Это кажется довольно прямолинейным...
for( int i = 0; i < n; i++ ) { lst.Add( thingToAdd ); }
: D