Convertir un tableau int en ArrayList en Java

Rupam Yadav 12 octobre 2023
  1. Conversion d’un tableau int en ArrayList en utilisant le flux Java 8
  2. Conversion d’un tableau int en une liste de tableaux en utilisant une boucle for améliorée en Java
  3. Convertir un tableau int en une liste d’objets entiers en utilisant Guava
Convertir un tableau int en ArrayList en Java

Ce tutoriel présente la façon dont nous pouvons convertir un tableau d’int primitif en ArrayList en Java. Nous ne pouvons pas créer un tableau de types de données primitives de façon à utiliser l’objet Integer.

Conversion d’un tableau int en ArrayList en utilisant le flux Java 8

Cet exemple utilise l’API Stream de la classe Arrays qui fournit plusieurs méthodes pour manipuler un tableau. Pour que cela fonctionne, nous créons d’abord un tableau d’éléments int et utilisons la classe Arrays pour appeler la méthode stream(). Mais comme les éléments de intArray sont de types primitifs, nous devons utiliser la classe boxed() pour mettre en boîte chaque primitive à un objet Integer.

La méthode collect() rassemble les éléments et Collectors.toList() les convertit en une liste. Nous pouvons transformer la liste retournée en ArrayList<Integer>.

import java.util.ArrayList;
import java.util.Arrays;
import java.util.stream.Collectors;

public class IntToInteger {
  public static void main(String[] args) {
    int[] intArray = {10, 20, 30, 40};

    ArrayList<Integer> integerArray =
        (ArrayList<Integer>) Arrays.stream(intArray).boxed().collect(Collectors.toList());

    System.out.println(integerArray);
  }
}

Production :

[10, 20, 30, 40]

Conversion d’un tableau int en une liste de tableaux en utilisant une boucle for améliorée en Java

Nous pouvons utiliser la méthode manuelle pour ajouter chaque élément du tableau à la ArrayList. Cette méthode n’utilise aucune fonction, et à la place, une boucle for améliorée est suffisante pour que cela fonctionne. Nous créons un tableau intArray avec quelques éléments de type int et un ArrayList vide dont la taille initiale est égale à la taille de intArray.

Maintenant, comme le ArrayList a précisément la capacité de contenir les éléments de intArray, nous pouvons utiliser la boucle for améliorée et appeler la méthode add() qui ajoute un élément dans le ArrayList. La boucle for va itéré à travers le tableau, et chaque élément sera ajouté à l’ArrayList.

Nous pouvons voir dans la sortie que nous obtenons les mêmes éléments qu’avec intArray.

import java.util.ArrayList;

public class IntToInteger {
  public static void main(String[] args) {
    int[] intArray = {13, 17, 21, 23};

    ArrayList<Integer> integerArray = new ArrayList<>(intArray.length);

    for (int i : intArray) {
      integerArray.add(i);
    }

    System.out.println(integerArray);
  }
}

Production :

[13, 17, 21, 23]

Convertir un tableau int en une liste d’objets entiers en utilisant Guava

Dans cet exemple, nous utilisons la classe Ints incluse dans la bibliothèque Guava. Pour utiliser les fonctions de la bibliothèque, nous incluons sa dépendance maven au projet.

<dependency>
   <groupId>com.google.guava</groupId>
   <artifactId>guava</artifactId>
   <version>23.5-jre</version> 
</dependency>

intArray est un tableau avec des éléments du type int. Nous utilisons la classe Ints pour appeler asList() et passer le tableau en argument. Ints.asList(intArray) renvoie une liste d’objets Integer.

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

public class IntToInteger {
  public static void main(String[] args) {
    int[] intArray = {13, 17, 21, 23};

    List<Integer> integerArray = Ints.asList(intArray);

    System.out.println(integerArray);
  }
}

Production :

[13, 17, 21, 23]
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 Array

Article connexe - Java ArrayList