.NET会为列表分配内存吗?

时间:2012-04-15 05:54:53

标签: c#

如果我实例化了Employee类的五个对象:emp1,emp2 ... emp5并将它们放在IList的listA中。现在,如果我创建另一个包含listA子集的IList listB,例如

IList<Employee> listB = listA.Take(3).ToList()

listB中的Employee对象是否依赖于listA中的同一个Employee?

谢谢,

2 个答案:

答案 0 :(得分:3)

是的,但需要注意的是.Take没有创建IList。如果您编写了listA.Take(3).ToList(),那么您对结果的描述(包含对相同对象的引用的列表)将是准确的。

答案 1 :(得分:0)

我不确定你能不能这样做;您需要创建一个新列表并将项目添加到它 - 这意味着它将是一个副本。您认为也可以通过使用.ToList()

来实现