我有两个数组,我试图将数组值从一个复制到另一个,但不是全部。这是我的代码。我在使用finalplace[y] = place[y];
的行上收到错误。我有另一个名为place
的数组,它是更长的数组。我不想制作地方数组的精确副本。我只想获得第一个数组值,其位置小于count
。有什么想法吗?
int [] finalplace = new int [count];
for (int y = 0; y <= count; y = y + 1) {
finalplace[y] = place[y];
}
答案 0 :(得分:1)
新阵列的索引范围最高但不包括count
。所以你应该对你的for
循环做同样的事情。
请注意,System.arraycopy
将允许您复制数组的一部分。
答案 1 :(得分:1)
答案 2 :(得分: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 );
答案 3 :(得分:0)
使用Arrays.copyOf方法而不是负担复制每个元素的负担。