c#数组复制

当然不是简单的等于就可以咯。因为已经有博主写的比较详细了。我这里就负责做知识的搬运工了噜噜噜噜拉拉

原文地址:https://www.cnblogs.com/makesense/p/4461016.html


已知数组如下:

int[] array = { 1, 5, 9, 3, 7, 2, 8 ,6, 4};

(1).引用复制,易引起错误,不推荐

int[] copy = array;

(2).遍历拷贝

int[] copy = new int[array .Length];

for (int i = 0; i < array.Length; i++)
{
  copy[i] = array[i];
}

(3).使用CopyTo方法

int[] copy = new int[array .Length];

array.CopyTo(copy, 0);

CopyTo方法用作将源数组全部拷贝到目标数组中,可以指定目标数组的起始索引,但需确保目标数组能容纳下源数组,CopyTo可用来合并多个数组

(4).使用Array.Copy方法

int[] copy = new int[array .Length];

Array.Copy(array, copy, array.Length);

Array.Copy方法可以将源数组的部分元素拷贝到目标数组中,三个参数时,可以指定源数组复制的元素数目(从第一个元素开始);五个参数时,不仅可以指定源数组复制的元素数目及起始索引,也能指定目标数组的起始索引。

(5).使用Clone方法

int[] copy=(int[])array.Clone();

由于Clone的返回值类型是object,所以要强制转换为int[]

猜你喜欢

转载自blog.csdn.net/keneyr/article/details/88697887