C# 拷贝数组的几种方法

已知数组如下:

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[]

posted @ 2015-04-27 19:11  天琊蓝  阅读(70312)  评论(3编辑  收藏  举报