int []和Integer []有什么区别

时间:2014-12-01 15:50:33

标签: java arrays reverse

我试图颠倒数组的顺序并打印它。我通过使用从(array.length-1)递减的for循环将每个元素移动到ArrayList中来完成此操作。然后我尝试使用' arrayList.toArray(array)'方法。我知道它会返回' object []'所以我改变了我的' int []'到'整数[]'它起作用了。

我的问题是数组'整数[]和#39;之间的区别是什么?和' int []'

public static void main(String[] args) {
    //here i changed int [] to Integer []
    Integer[] arr ={ 4,3,5,7,8,2,9,1};
    System.out.println("array list \t :"+ Arrays.toString(arr)+"\n");
    System.out.println(" pos 1:   " + arr[1]);
    System.out.println("pos last: " + arr[arr.length-1]);
    System.out.println("*********************************");
    swapElements(arr);
    System.out.println("array list after  :"+ Arrays.toString(arr)+"\n");
    System.out.println("pos 1 after swap is:\t" + arr[1]);
    System.out.println("pos last after swap is: " + arr[arr.length-1]);

}
public static void  swapElements(Integer []array)
{ 
    ArrayList<Integer> array2 = new ArrayList<Integer>();
    for(int i =array.length -1;i>=0; i--)
    {

        array2.add(array[i]);

    }
    array2.toArray(array);
}

1 个答案:

答案 0 :(得分:1)

int[]的元素通过defualt初始化,值为0,但Integer[]的元素默认初始化为null。

在某些情况下,您可能需要空值(不表示任何内容)而不是0。