Array.Copyメソッドの他にも、Array.CopyToメソッドを使って複写することも出来ます。 このメソッドはArray.Copyとは異なりインスタンスメソッドです。 また、引数に指定するのは複写先の始点となるインデックスで、常に複写元の配列全体が複写されます。
Array.CopyToメソッドを使って配列の内容を複写する
using System;
class Sample {
static void Main()
{
// 複写元の配列
int[] arr1 = {0, 1, 2, 3, 4};
// 初期化されていない配列を確保
var arr2 = new int[7];
// arr1の全要素をarr2のインデックス1以降に複写
arr1.CopyTo(arr2, 1);
foreach (var elem in arr2) {
Console.Write("{0}, ", elem);
}
Console.WriteLine();
}
}
実行結果
0, 0, 1, 2, 3, 4, 0,
CopyToはインスタンスメソッドであるという点以外は、Copyメソッドと同様で、その動作もCopyメソッドと同じです。