Domanda

int[] mylist = { 2, 4, 5 };
IEnumerable<int> list1 = mylist;
list1.ToList().Add(1);
// why 1 does not get addedto list1??
È stato utile?

Soluzione

Perché dovrebbe? ToList () genera un nuovo Elenco e il valore '1' viene aggiunto ad esso. Dal momento che non memorizzi il reso, il nuovo elenco viene quindi lanciato quando non rientra nell'ambito.

ToList () non modifica l'elenco originale di oggetti IEnumerable1 né fornisce una nuova rappresentazione (si chiamerebbe AsList () se lo facesse).

Altri suggerimenti

Devi:

int[] mylist = { 2, 4, 5 };
IEnumerable<int> list1 = mylist;
List<int> lst = list1.ToList();
lst.Add(1);
mylist = lst.ToArray();
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top