配列のコピーを作成する 質問する

配列のコピーを作成する 質問する

常に更新される配列がありますa。 としましょうa = [1,2,3,4,5]。 の正確な複製コピーを作成しa、 と呼ぶ必要がありますbaを に変更しても[6,7,8,9,10]bのままである必要があります[1,2,3,4,5]。これを行うための最良の方法は何ですか?for次のようなループを試しました:

for(int i=0; i<5; i++) {
    b[i]=a[i];
}

しかし、それは正しく動作していないようです。ディープ コピーなどの高度な用語は使用しないでください。意味がわかりません。

ベストアンサー1

ぜひお試しくださいSystem.arraycopy()

int[] src  = new int[]{1,2,3,4,5};
int[] dest = new int[5];

System.arraycopy( src, 0, dest, 0, src.length );

しかし、ほとんどの場合、clone() を使用する方が良いでしょう。

int[] src = ...
int[] dest = src.clone();

おすすめ記事