gpt4 book ai didi

c# - 将列表复制到新列表 - 更高效的最佳实践

转载 作者:太空狗 更新时间:2023-10-29 22:03:06 24 4
gpt4 key购买 nike

将列表复制到新列表的合适方法是什么?将列表复制到新列表的最有效方法是什么?

通过高效,而不是代码效率,更多的是在幕后框架意义上。

List<String>List2 = List.ToList();

或者:

List<String>List2 = new List<String>();
foreach (string item in List)
{
List2.Add(item);
}

更新:

更高效的 IL 代码怎么样?

最佳答案

鉴于List<T>有一个 IEnumerable<T>构造函数,我更喜欢这种形式:

List<string> newList = new List<string>(otherList);

编辑

正如 Ondrej 在下面的反编译代码中指出的那样,List<T> 的构造函数预分配数组的大小并复制内容。这比创建一个新列表然后遍历另一个列表单独添加项目要快得多,尤其是在您的第二个示例中您没有指定要预分配的项目数。

关于c# - 将列表复制到新列表 - 更高效的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17571621/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com