2017-04-17 64 views
1

编辑:事实证明,在主方法中存在与此代码片段的结果相矛盾的代码。这只是我没有对我的方法给予足够的重视。对不起,浪费你的时间。将数组复制到另一个数组

我想复制和现有的数组调用列表到一个新的数组称为数组。我成功地将列表复制到一个新的数组中,但是当我尝试测试代码时,最后输出的数字是数组的长度减1.我正在努力弄清楚为什么这种情况持续发生并且希望寻求一些帮助。

int[] array = new int[size]; 

    for(int x = 0;x < array.length;x++){ 
     array[x] = list[x]; 
     System.out.println(array[x]); 
    } 
+0

为什么不只是使用'int [] array = Arrays.copyOf(list,list.length)'? –

+0

请显示演示您的问题的最简单的一组代码(包括测试数据)。 – Jason

+0

@AndyTurner我试图复制一个部分填充的数组 – s24569

回答

0

我使用Arrays.copyOf()来复制的元素:

import java.util.*; 
public class Solution { 
    public static void main(String[] args) { 
     int[] list = {1,2,3,4,5,6}; 
     int[] array = Arrays.copyOf(list, list.length); 
     for(int x = 0;x < array.length;x++){ 
      array[x] = list[x]; 
      System.out.println(array[x]); 
     } 
    } 
} 

而且结果是:

1 
2 
3 
4 
5 
6 
0

您可以尝试

int[] A = {1,2,3,4,5,6}; 
int[] B = A.clone(); 

int[] B = Arrays.copyOfRange(A, 0, A.length); 

另外。您problem.Check你与我或运行我的解决问题的代码代码

0

enter image description here

我的代码。 我希望这对你有所帮助。

相关问题