.NET 将为列表分配内存

本文关键字:分配 内存 列表 NET | 更新日期: 2023-09-27 18:31:13

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

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

列表 B 中的员工对象是否引用到列表 A 中的同一员工?

谢谢

.NET 将为列表分配内存

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

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