Cómo convertir la lista de números enteros en un array de intangibles en Java

Rupam Yadav 12 octubre 2023
  1. Stream().mapToInt() para convertir la lista de enteros en un array de int en Java
  2. ArrayUtils.toPrimitive() para convertir la lista de enteros en Int Array
  3. El método de Guava para convertir la lista de números enteros en un array de intangibles en Java
Cómo convertir la lista de números enteros en un array de intangibles en Java

En este tutorial, introduciremos cómo podemos convertir una List<Integer> a int[] en Java. Podemos ver que ambos son de diferentes tipos de datos que es ArrayList of Integers y el array de int. El primero contiene un tipo de datos de objeto, es decir, Entero, y el segundo es un tipo de datos primitivo, es decir, int.

Stream().mapToInt() para convertir la lista de enteros en un array de int en Java

Stream se introduce en Java 8 con el paquete java.util.stream. Puede ayudarnos a obtener los resultados deseados porque incluye un método mapToInt() que devuelve un IntStream (una secuencia de valores int primitivos).

Para hacerlo más claro, veámoslo en el siguiente ejemplo.

import java.util.ArrayList;
import java.util.List;

public class Main {
  public static void main(String[] args) {
    List<Integer> numList = new ArrayList<Integer>();
    numList.add(11);
    numList.add(22);
    numList.add(33);
    numList.add(44);
    numList.add(55);

    int[] numArray = numList.stream().mapToInt(i -> i).toArray();

    for (int intValue : numArray) {
      System.out.println(intValue);
    }
  }
}

Resultado:

int primitive: 11
int primitive: 22
int primitive: 33
int primitive: 44
int primitive: 55

Podemos comprobar el tipo de datos de numArray mediante la depuración. La siguiente salida de depuración muestra que el numList es un ArrayList, mientras que el numArray es un int primitivo.

numList = {ArrayList @832} size = 5 numArray = {int[5] @833} intValue = 11

ArrayUtils.toPrimitive() para convertir la lista de enteros en Int Array

Tenemos otra forma de asignar una List<Integer> a un tipo de int. Usaremos el lenguaje común de Apache, que es un conjunto de métodos de ayuda.

ArrayUtils.toPrimitive() nos permite pasar nuestra numList que nos da el resultado en el tipo de datos int[].

import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang3.ArrayUtils;

public class Main {
  public static void main(String[] args) {
    List<Integer> numList = new ArrayList<Integer>();
    numList.add(110);
    numList.add(220);
    numList.add(330);
    numList.add(440);
    numList.add(550);

    int[] intArray = ArrayUtils.toPrimitive(numList.toArray(new Integer[numList.size()]));
    for (int intValue : intArray) {
      System.out.println("int primitive: " + intValue);
    }
  }
}

Resultado:

int primitive: 110
int primitive: 220
int primitive: 330
int primitive: 440
int primitive: 550

El método de Guava para convertir la lista de números enteros en un array de intangibles en Java

Guava es una biblioteca que puede ayudarnos a convertir nuestra lista de números enteros en valores primitivos de int.

Ints.toArray(ListOfIntegers) es una parte del paquete com.google.common.primitives.Ints que toma nuestra lista como argumento y nos proporciona el array de ints.

import com.google.common.primitives.Ints;
import java.util.ArrayList;
import java.util.List;

public class Main {
  public static void main(String[] args) {
    List<Integer> numList = new ArrayList<Integer>();
    numList.add(110);
    numList.add(220);
    numList.add(330);
    numList.add(440);
    numList.add(550);

    int[] numArray = Ints.toArray(numList);
    for (int intValue : numArray) {
      System.out.println("int primitive: " + intValue);
    }
  }
}

Resultado:

int primitive: 110
int primitive: 220
int primitive: 330
int primitive: 440
int primitive: 550
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Artículo relacionado - Java Int

Artículo relacionado - Java List

Artículo relacionado - Java Array