arrayCopy
ProcessingにおけるarrayCopyは、配列(または配列の一部)を別の配列にコピーします。
src配列は、srcPositionで指定された位置からdstPositionで指定された位置にコピーされ、dst配列にコピーされます。
コピーする要素の数は、長さによって決まります。
値をコピーすると、コピー先配列の既存の値が上書きされます。
上書きするのではなく値を追加するには、concat()を使用します。
- arrayCopy(src,dst) - 配列全体を同じサイズの別のものにコピーします。
arrayCopy(src,0,dst,0,src.length)と同等です。
for()ループを繰り返して各要素を個別にコピーするよりも、この関数で配列データをコピーする方がはるかに効率的です。
この関数は参照のみをコピーします。
つまり、ほとんどの場合、1次元配列(括弧の1組)のみをコピーします。
2次元配列が2次元(または3次元以上)の配列で使用される場合、2次元配列は単なる「配列の配列」であるため、参照を第1レベルでコピーします。
ただし、これはしばしば望ましい動作であるため、エラーは発生しません。
内部的には、この関数はJavaのSystem.arraycopy()メソッドを呼び出します。
そのため、そこに適用されるほとんどの処理は継承されます。
Processingで使用するarrayCopyの使い方は以下の通りです。
String north = { "OH","IN", "MI"};
String south = { "GA","FL", "NC"};
arrayCopy(north, south);
println(south);
// 更新された配列の内容をコンソールに出力する
// [0] "OH"
// [1] "IN"
// [2] "MI"
String north2 = { "OH","IN", "MI"};
String south2 = { "GA","FL", "NC"};
arrayCopy(north2, 1, south2, 0, 2);
println(south2);
// 更新された配列の内容をコンソールに出力する
// [0] "IN"
// [1] "MI"
// [2] "NC"
〇arrayCopyの構文
arrayCopy(src, srcPosition, dst, dstPosition, length)
arrayCopy(src, dst, length)
arrayCopy(src, dst)
〇appendのパラメータ
src :ソース配列(Object)
srcPosition :ソース配列の開始位置(int)
dst :ソース配列と同じデータ型の出力配列(Object)
dstPosition :出力先配列の開始位置(int)
length :コピーされる配列要素の数(int)
〇arrayCopyの戻り値
void