int[] mylist = { 2, 4, 5 };
IEnumerable<int> list1 = mylist;
list1.ToList().Add(1);
// why 1 does not get addedto list1??
Learner
问问题
380 次
2 回答
18
为什么会呢?ToList() 生成一个新列表,并将值“1”添加到其中。由于您不存储退货,因此新列表超出范围时会被丢弃。
ToList() 不会更改原始的 IEnumerable 对象 list1 或提供新的表示形式(如果这样做,它将被称为 AsList() )。
于 2009-01-05T03:01:33.413 回答
1
你需要 :
int[] mylist = { 2, 4, 5 };
IEnumerable<int> list1 = mylist;
List<int> lst = list1.ToList();
lst.Add(1);
mylist = lst.ToArray();
于 2009-01-05T14:34:23.110 回答