![]() |
1
0
使用“ToList”会强制迭代器遍历所有集合,即使您认为您说过“只需给我集合中的前两个项”。如果该集合有1000个元素,那么您将在该集合上迭代,直到到达最后一个项为止,它仍将为您提供2个元素。
在你的方法中,你实例化一个你添加到其中的列表,你需要改进一点来使用收益率返回,因此,不需要分配不需要分配的数据。LINQ方法是延迟计算的,这意味着在您尝试具体化结果之前不会为数据分配任何内存(例如ToList)。当您使用LINQ方法时,您获得的唯一内存使用量是当前迭代,而不是集合中的所有内容。 假设使用下面的代码片段来帮助您。
或者直接用LINQ更简洁:
|
|
Robert King · Unity C#语法问题-转换位置 1 年前 |
![]() |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
|
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
![]() |
i_sniff_ket · 在unity之外使用unity类 2 年前 |