2009-07-13 7 views

risposta

78

provare il seguente

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

modo più veloce che conosco è:

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

quale è possibile effettuare un metodo di estensione, se si desidera utilizzarlo più volte.

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

Poi si può solo fare:

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

Se si conosce la lunghezza della lista, impostarlo durante la costruzione: var list = new List (5); – typpo

2

Questo sembra abbastanza straight-forward ...

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

: D

+0

So come farlo. Ho detto più breve – xyz

+0

Non ero uno per downvote, btw. Facile errore dato che non l'ho detto nel titolo. Aggiornato :) – xyz

+0

np ... Mi chiedo qual è la definizione più breve? Minified? –

Problemi correlati