Comment convertir une liste d'entiers en tableau Int en Java

Rupam Yadav 12 octobre 2023
  1. Stream().mapToInt() pour convertir la liste d’entiers en tableau d’int en Java
  2. ArrayUtils.toPrimitive() pour convertir une liste d’entiers en tableau d’int. en Java
  3. Méthode de Guava pour convertir une liste d’entiers en tableau d’entiers en Java
Comment convertir une liste d'entiers en tableau Int en Java

Dans ce tutoriel, nous allons présenter comment nous pouvons convertir une List<Integer> en int[] en Java. Nous pouvons voir que les deux sont de types de données différents, c’est-à-dire ArrayList of Integers et array of int. Le premier contient un type de données objet, c’est-à-dire Integer, et le second est un type de données primitives, c’est-à-dire int.

Stream().mapToInt() pour convertir la liste d’entiers en tableau d’int en Java

Stream est introduit en Java 8 avec le paquet java.util.stream. Il peut nous aider à obtenir les résultats souhaités car il comprend une méthode mapToInt() qui retourne un IntStream (une séquence de valeurs int primitives).

Pour que les choses soient plus claires, voyons cela dans l’exemple ci-dessous.

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);
    }
  }
}

Production:

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

Nous pouvons vérifier le type de données de numArray en déboguant. La sortie de débogage ci-dessous montre que numList est une ArrayList, alors que numArray est une int primitive.

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

ArrayUtils.toPrimitive() pour convertir une liste d’entiers en tableau d’int. en Java

Nous avons une autre façon de faire passer une List<Integer>. Nous utiliserons Apache Common Lang, qui est un ensemble de méthodes d’aide.

ArrayUtils.toPrimitive() nous permet de passer dans notre numList qui nous donne le résultat en int[] type de données.

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);
    }
  }
}

Production:

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

Méthode de Guava pour convertir une liste d’entiers en tableau d’entiers en Java

Guava est une bibliothèque qui peut nous aider à convertir notre liste d’entiers en valeurs primitives d’int.

Ints.toArray(ListOfIntegers) est une partie du paquet com.google.common.primitives.Ints qui prend notre liste en argument et nous fournit le tableau d’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);
    }
  }
}

Production:

int primitive: 110
int primitive: 220
int primitive: 330
int primitive: 440
int primitive: 550
Auteur: Rupam Yadav
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

Article connexe - Java Int

Article connexe - Java List

Article connexe - Java Array