當我這樣做,爲什麼Java不autobox INT []爲整數[]
arrayList1
- 包含一個元素,它是一個int[]
。arrayList2
- 不編譯(錯誤:構造ArrayList<Integer>(List<int[]>)
是不確定的)arrayList3
- 包含7個元素,它們是Integer
對象
下面的代碼:
int[] intArray = new int[]{2,3,4,5,6,7,8};
ArrayList arrayList1 = new ArrayList(Arrays.asList(intArray));
ArrayList<Integer> arrayList2 = new ArrayList<Integer>(Arrays.asList(intArray));
Integer[] integerArray = new Integer[]{2,3,4,5,6,7,8};
ArrayList<Integer> arrayList3 = new ArrayList<Integer>(Arrays.asList(integerArray));
問題: 爲什麼編譯器不能自動將int[]
中的元素設置爲Integer
以及創建一個ArrayList<Integer>
?這背後的原因是什麼?這是我的愚蠢或其他原因?
非常感謝你Rohit。得到它了! – namalfernandolk
@NamalFernando不客氣:) –