为了账号安全,请及时绑定邮箱和手机立即绑定

如何在C#中将数组的一部分复制到另一个数组?

如何在C#中将数组的一部分复制到另一个数组?

C#
BIG阳 2019-12-26 11:08:38
如何将数组的一部分复制到另一个数组?考虑我有int[] a = {1,2,3,4,5};现在,如果我给出数组的开始索引和结束索引,a则应将其复制到另一个数组。就像我将开始索引设为1,结束索引设为3一样,元素2、3、4应该复制到新数组中。
查看完整描述

3 回答

?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

int[] b = new int[3];

Array.Copy(a, 1, b, 0, 3);

a =源数组

1 =源数组中的起始索引

b =目标数组

0 =目标数组中的起始索引

3 =要复制的元素


查看完整回答
反对 回复 2019-12-26
?
倚天杖

TA贡献1828条经验 获得超3个赞

int[] a = {1,2,3,4,5};


int [] b= new int[a.length]; //New Array and the size of a which is 4


Array.Copy(a,b,a.length);

其中Array是具有方法Copy的类,该方法将数组的元素复制到b数组。


从一个阵列复制到另一个阵列时,必须向要复制的另一个阵列提供相同的数据类型。


查看完整回答
反对 回复 2019-12-26
?
莫回无

TA贡献1865条经验 获得超7个赞

注意:我发现此问题是在寻找如何调整现有阵列大小的答案中的步骤之一。


因此,我想在这里添加该信息,以防万一其他人正在寻找如何进行远程复制的问题,作为对调整数组大小的问题的部分答案。


对于任何发现此问题并寻找与我相同的人,这非常简单:


Array.Resize<T>(ref arrayVariable, newSize);

其中T是类型,即在其中声明arrayVariable的地方:


T[] arrayVariable;

该方法处理空检查,以及newSize == oldSize不起作用,并且当然静默处理其中一个数组比另一个数组长的情况。


查看完整回答
反对 回复 2019-12-26
  • 3 回答
  • 0 关注
  • 1272 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信