0

2つの配列があり、配列値を一方から他方にコピーしようとしていますが、すべてではありません。これが私が持っているコードです。の行でエラーが発生しfinalplace[y] = place[y];ます。place長い配列である、という別の配列があります。place配列の正確なコピーを作成したくありません。配置が。未満の最初の配列値を取得したいだけですcount。何か案は?

int [] finalplace = new int [count];
for (int y = 0; y <= count; y = y + 1) {
    finalplace[y] = place[y];
}
4

4 に答える 4

1

新しい配列のインデックスの範囲は、までですが、これは含まれませんcount。したがって、forループでも同じことを行う必要があります。

System.arraycopy配列の一部をコピーできることに注意してください。

于 2013-03-02T19:54:48.653 に答える
1

ユーティリティ クラスを使用する

java.util.Arrays

たくさんのコピー方法があります。たとえば、copyOfまたはcopyOfRange

于 2013-03-02T19:57:02.847 に答える
1

System.arraycopy()を使用して試すことができます

int[] a = new int[]{1,2,3,4,5};
int[] b = new int[5];

System.arraycopy( a, 0, b, 0, a.length );
于 2013-03-02T19:58:34.323 に答える
0

各要素をコピーする負担をかける代わりに、Arrays.copyOfメソッドを使用します。

于 2013-03-02T20:10:30.363 に答える