我试图颠倒数组的顺序并打印它。我通过使用从(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);
}
答案 0 :(得分:1)
int[]
的元素通过defualt初始化,值为0,但Integer[]
的元素默认初始化为null。
在某些情况下,您可能需要空值(不表示任何内容)而不是0。