目次
配列のコピー
配列の要素を他の配列へコピーするには、ArrayクラスのCopyメソッドを使用します。
Array.Copy(コピー元配列名, [コピー元開始位置], コピー先配列名, [コピー先開始位置], コピー要素数)
[] は省略可能な引数
それではサンプルを見てみましょう。
Console.WriteLineを使って、Copyメソッドの動作をコンソールに出力します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
int[] ListCopy = { 1, 2, 3, 4, 5 }; int[] ListPaste = new int[5]; //全要素のコピー Array.Copy(ListCopy, ListPaste, ListCopy.Length); Console.WriteLine("全要素コピー"); for (int i = 0; i < ListPaste.Length; i++) { Console.WriteLine(ListPaste[i]); } //配列の初期化 for (int i = 0; i < ListPaste.Length; i++) { ListPaste[i] = 0; } //コピー元の1要素目から3要素をコピー先の0要素目から2要素目へコピー Array.Copy(ListCopy, 1, ListPaste, 0, 3); Console.WriteLine("一部コピー"); for (int i = 0; i < ListPaste.Length; i++) { Console.WriteLine(ListPaste[i]); } |
上記を実行した結果がこちらです。
実行結果
全要素コピー
1
2
3
4
5
一部コピー
2
3
4
0
0
実行結果がコンソールに出力されました。
コピー元の配列の要素が、コピー先の配列にコピーされているのがわかります。
なお、インデックスの開始番号は0である点に注意してください。
以上が、配列の要素を別の配列に複製する「Copy」メソッドの使い方です。
ぜひ参考にしてみてください。