嘿,我一直在试图克隆一个列表,到目前为止,我发现功能 的AddRange但我敢肯定它不克隆列表中的对象,但做一个列表的浅表副本我想知道如何克隆列表 在此先感谢。
1
A
回答
7
要克隆一个列表,每个单独的项目都必须克隆。提供克隆()的一个有用的执行该项目类存在,这是使用LINQ一个班轮:
List<MyType> lstCloned = lstOriginal.Select(i => i.Clone()).ToList();
0
您需要解析列表并为每个项目创建一个新对象,然后将新项目添加到新列表中。
3
的AddRange,更一般包含在列表只对这些对象的克隆对象引用的所有操作。要自己克隆对象,您应该在对象级本身处理该副本。
“克隆列表”是什么意思?克隆对象?你可以在每个对象上明确地实现它(例如通过实现ICloneable接口),或者使用Reflection来实现一个通用的实现。
寻找“ICloneable”,“深度克隆”或“深层复制”以了解更多关于获得预期结果的不同方法。
相关问题
- 1. 在列表框中克隆项目c#
- 2. 在Java中克隆列表
- 3. C#如何克隆列表列表
- 4. 克隆列表
- 5. 在C中克隆DTO#
- 6. 克隆列表<T>
- 7. 克隆列表项Jquery
- 8. Java中的克隆列表元素
- 9. c中的克隆对象#
- 10. C++中的克隆函数
- 11. 在链接列表上实现克隆
- 12. 将克隆插入到列表中?
- 13. 克隆表
- 14. 克隆表行
- 15. 克隆表行
- 16. C++ - 克隆基类
- 17. C#反射,克隆
- 18. C#克隆通用
- 19. 将克隆的SPView添加到列表
- 20. 从div到列表的克隆元素
- 21. 如何在WinRT XAML C#中克隆UIElement?
- 22. 如何在C#.NET中克隆WebControls?
- 23. 如何在C#中克隆图形?
- 24. 在C中克隆一个对象#
- 25. Qt的C++ - 克隆对象
- 26. 克隆控制 - C#(WinForm的)
- 27. 用随机指针克隆链表C++
- 28. jQuery克隆表行
- 29. 深克隆Oracle表
- 30. 在NodeJS中的errbit克隆
请参阅http://stackoverflow.com/questions/222598/how-do-i-clone-a-generic-list-in-c – AdamSane 2010-11-07 19:43:01