【发布时间】:2010-10-30 22:15:46
【问题描述】:
我有一个包含 10 个元素的数组 X。我想创建一个新数组,其中包含 X 中从索引 3 开始并以索引 7 结束的所有元素。当然,我可以轻松编写一个循环来为我做这件事,但我想让我的代码尽可能干净. C#中有没有可以为我做的方法?
类似(伪代码):
Array NewArray = oldArray.createNewArrayFromRange(int BeginIndex , int EndIndex)
Array.Copy 不符合我的需求。我需要将新数组中的项目克隆。 Array.copy 只是 C 风格的 memcpy 等价物,这不是我要找的。p>
【问题讨论】:
-
@Kirtan - “dup”特别想要 IEnumerable
- 这是不同的并且有不同的最佳解决方案;海事组织 -
那么,声明新数组并调用 .Copy( ) 的两行代码不是“干净的代码”吗?
-
@Ed Swangren - 如果您需要在链式表达式的中间执行此操作,则不需要;-p
-
ShaggyUk 的答案可能是正确的:stackoverflow.com/questions/943635/…
标签: c# arrays .net clone deep-copy