Почему 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>
? В чем причина этого? Это моя глупость или какая-то другая причина?