convertir aslist array java list

java - convertir - arrays aslist integer



Cómo agregar elementos en la lista cuando se usa Arrays.asList() (5)

Arrays.asList (), genera una lista que en realidad está respaldada por una matriz y es una matriz que se transforma en una lista. Puede usarlo como una lista, pero no puede hacer ciertas operaciones en él, como agregar nuevos elementos. Así que la mejor opción es pasarlo a un constructor de otro objeto de lista como este:

List<T> list = new ArrayList<T>(Arrays.asList(...));

No podemos realizar la <Collection>.add o <Collection>.addAll en las colecciones que hemos obtenido de Arrays.asList ... solo se permite la operación de eliminación.

Entonces, ¿qué sucede si me encuentro con un escenario en el que necesito agregar un nuevo elemento en la List sin eliminar los elementos anteriores en la List ? ¿Cómo puedo conseguir esto?


Crea una nueva ArrayList usando el constructor:

List<String> list = new ArrayList<String>(Arrays.asList("a", "b"));



Puedes sortear el ArrayList intermedio con flujos de Java8:

Integer[] array = {1, 2, 3}; List<Integer> list = Streams.concat(Arrays.stream(array), Stream.of(4)).collect(Collectors.toList());

Esto debería ser bastante eficiente, ya que solo puede iterar sobre la matriz y también asignar previamente la lista de destino. Puede o no ser mejor para arreglos grandes. Como siempre, si importa tienes que medir.


Una forma es construir una nueva ArrayList :

List<T> list = new ArrayList<T>(Arrays.asList(...));

Habiendo hecho eso, puedes modificar la list tu gusto.