Diferencia entre Arrays.asList (array) y la nueva ArrayList <Integer> (Arrays.asList (array))

Cuál es la diferencia entre

1.List<Integer> list1 = new ArrayList<Integer>(Arrays.asList(ia));  //copy
2.List<Integer> list2 = Arrays.asList(ia);

dóndeia Es una matriz de enteros.

Llegué a saber que algunas operaciones no están permitidas enlist2. ¿por que es esto entonces? ¿Cómo se almacena en la memoria (referencias / copia)?

Cuando mezclo las listas,list1 no afecta a la matriz original, perolist2 hace. Pero aúnlist2 es algo confuso

CómoArrayList ser actualizado a la lista difiere de la creación de nuevosArrayList

list1 differs from (1)
ArrayList<Integer> list1 = new ArrayList<Integer>(Arrays.asList(ia));

Respuestas a la pregunta(13)

Su respuesta a la pregunta