¿Cómo convertir List<Integer> a int[] en Java?
¡Hola a todos! Soy nuevo en Java y me encontré con un problema. Tengo una lista de enteros `List` que obtengo después de procesar datos. Necesito pasarla a un método que solo acepta un array primitivo `int[]`. ¿Cómo puedo hacerlo?
Intenté simplemente convertir los tipos, pero el compilador se queja. Aquí hay un ejemplo de mi código:
```java
List numbers = new ArrayList<>();
numbers.add(10);
numbers.add(20);
numbers.add(30);
// Así no funciona — error de compilación
int[] array = (int[]) numbers;
```
Entiendo que `List` es un objeto, y `int[]` es un array primitivo. Pero, ¿cómo convertirlos entre sí? Intenté usar `toArray()`:
```java
Integer[] array = numbers.toArray(new Integer[0]);
```
Pero esto da un array `Integer[]`, y necesito específicamente `int[]`. ¿Recorrer manualmente cada elemento con un bucle es la única forma? ¿O hay una solución más elegante? Por favor, indíquenme cómo convertir `List` a `int[]` de manera correcta y eficiente.