CodeGym /Blog Java /France /Convertir une List en Array en Java
Auteur
Pavlo Plynko
Java Developer at CodeGym

Convertir une List en Array en Java

Publié dans le groupe France
Les listes et les tableaux sont deux façons de stocker des données en Java que tu utiliseras assez souvent. Dans les projets où tu dois stocker des données sans aucune sorte de traitement de fichiers, les listes et les tableaux te permettent de stocker des données tout au long de l'exécution de ton programme. Nous allons utiliser la classe ArrayList, qui implémente l'interface List en Java, tout au long de ce tutoriel.

Différence entre List et Array

List Array
La taille de List peut être modifiée La taille d'Array ne peut pas être modifiée
Tu ne peux pas stocker des types primitifs dans List Tu peux stocker des types primitifs dans Array
Tu peux utiliser des génériques avec List Tu ne peux pas utiliser des génériques avec Array
Consomme plus de mémoire Consomme moins de mémoire

Conversion de List à Array (list to array) à l'aide d'une fonction de bibliothèque

List dispose d'une méthode toArray() qui convertit directement le contenu de n'importe quelle liste en un tableau tout en conservant l'ordre des éléments de la liste d'origine dans l'instance d'Array. Voici l'algorithme et les étapes pour convertir une liste en tableau en Java en utilisant cette fonction de bibliothèque intégrée.
  1. Initialise une ArrayList.
  2. Ajoute des éléments à List en utilisant la méthode list.add(data_type).
  3. Crée un Array de la même taille que la List.
  4. Convertis la List en Array, en utilisant le nom de la variable de tableau créée à l'étape 3 comme argument.
  5. Affiche le contenu de l'instance d'Array.
Le code qui implémente ces étapes est donné ci-dessous.

import java.util.ArrayList;
public class convertListToArray {
 
    public static void main(String[] args) {
 
        //Converting List to Array With Library Function
 
        //Declaration of Array List
        ArrayList<String> sampleList = new ArrayList<String>();
 
        //Adding Elements to Array List
        sampleList.add("California");
        sampleList.add("Texas");
        sampleList.add("Illinois");
        sampleList.add("Massachusetts");
        sampleList.add("Florida");
        sampleList.add("Virginia");
        sampleList.add("Colorado");
 
 
        //Printing the Array List
        System.out.println("Elements of List: " + sampleList);
 
        //Declaring Array with Equal Size to the List
        String[]arr = new String [sampleList.size()];
 
        //Converting List to Array
        sampleList.toArray(arr);
 
        //Printing the Array
        System.out.print("Elements of Array: ");
        for (int i = 0 ; i < arr.length ; i++){
            System.out.print(arr[i] + "  ");
        }
    }
}
Convertir une List en Array en Java - 1

Conversion de List à Array sans l'aide d'une fonction de bibliothèque

Parfois, il peut être nécessaire de convertir une liste en tableau sans utiliser de fonctions intégrées. Mais la tâche à accomplir peut imposer certaines restrictions en termes d'utilisation des fonctions de bibliothèque. Cette exigence est courante pour les étudiants en programmation afin de les encourager à travailler sans fonctions de bibliothèque et les aider à apprendre le fonctionnement interne de ces fonctions avant de s'en servir. Dans de tels cas, tu peux suivre les étapes ci-dessous pour convertir une liste en un tableau en Java sans utiliser de fonction de bibliothèque.
  1. Initialise une ArrayList.
  2. Ajoute des éléments à List en utilisant la méthode list.add(data_type).
  3. Crée un Array de la même taille que la List.
  4. Crée une boucle for qui parcourra chaque élément de l'ArrayList et utilise la méthode list.get(index) pour l'attribuer à Array[index].
  5. Affiche le contenu de l'Array pour montrer que tu as réellement converti la liste en un tableau.
Le code implémentant ces étapes est donné ci-dessous.

import java.util.ArrayList;
public class converListToArray2 {
 
    public static void main(String[] args) {
        //Converting List to Array Without Library Functions
 
        //Declaration of Array List
        ArrayList<String> sampleList = new ArrayList<String>();
 
        //Adding Elements to Array List
        sampleList.add("California");
        sampleList.add("Texas");
        sampleList.add("Illinois");
        sampleList.add("Massachusetts");
        sampleList.add("Florida");
        sampleList.add("Virginia");
        sampleList.add("Colorado");
 
 
        //Printing the Array List
        System.out.println("Elements of List: " + sampleList);
 
        //Declaring Array with Equal Size to the List
        String[]arr = new String [sampleList.size()];
 
        //Converting to Array
        for (int i = 0 ; i < arr.length ; i++){
            arr[i] = sampleList.get(i);
        }
 
        //Printing the Array
        System.out.print("Elements of Array: ");
        for (int i = 0 ; i < arr.length ; i++){
            System.out.print(arr[i] + "  ");
        }
    }
}
De la même façon, si tu te demandes comment effectuer la conversion inverse, Array to List, tu peux le faire en utilisant la méthode intégrée Array.asList() ou en parcourant le tableau et en stockant ses valeurs à chaque index de la List.
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION