Accéder au contenu principal
Documents
Tableaux JavaProgrammation orientée objet en JavaTraitement des fichiers en JavaIntroduction To JavaLes bases du langage JavaMots-clés Java

Java ArrayList

En Java, ArrayList fait partie du Java Collections Framework et se trouve dans le paquet java.util. Il s'agit d'une implémentation de l'interface List sous la forme d'un tableau redimensionnable, qui offre un moyen pratique de stocker des collections d'éléments de taille dynamique.

Utilisation

ArrayList est utilisé lorsque vous avez besoin d'un réseau flexible dont la taille peut être augmentée ou réduite. Il permet un accès aléatoire rapide et convient aux scénarios dans lesquels des opérations de lecture fréquentes sont nécessaires.

Syntax

ArrayList<Type> arrayListName = new ArrayList<Type>();
  • Type: Le type d'éléments de la liste.
  • arrayListName: Le nom de l'instance ArrayList.

Exemples

Exemple 1 : Opérations de base

import java.util.ArrayList;

public class BasicArrayListExample {
    public static void main(String[] args) {
        ArrayList<String> fruits = new ArrayList<>();
        fruits.add("Apple");
        fruits.add("Banana");
        fruits.add("Orange");

        System.out.println("Fruits: " + fruits);

        fruits.remove("Banana");
        System.out.println("After removal: " + fruits);

        System.out.println("First fruit: " + fruits.get(0));
    }
}

Dans cet exemple, un site ArrayList de type String est créé pour stocker les noms de fruits. La méthode add() est utilisée pour insérer des éléments, remove() supprime un élément et get() récupère un élément par son index.

Exemple 2 : Itérer sur une liste de tableaux

import java.util.ArrayList;

public class IterateArrayListExample {
    public static void main(String[] args) {
        ArrayList<Integer> numbers = new ArrayList<>();
        numbers.add(10);
        numbers.add(20);
        numbers.add(30);

        for (int number : numbers) {
            System.out.println(number);
        }
    }
}

Cet exemple montre comment itérer sur un site ArrayList à l'aide d'une boucle for-each. Un site ArrayList de type Integer est créé et chaque élément est imprimé sur la console.

Exemple 3 : Tri d'une liste de tableaux

import java.util.ArrayList;
import java.util.Collections;

public class SortArrayListExample {
    public static void main(String[] args) {
        ArrayList<String> names = new ArrayList<>();
        names.add("John");
        names.add("Alice");
        names.add("Bob");

        Collections.sort(names);

        System.out.println("Sorted names: " + names);
    }
}

Dans cet exemple, un site ArrayList de type String est trié à l'aide de la méthode Collections.sort(), qui classe les éléments dans l'ordre naturel.

Opérations supplémentaires

La classe ArrayList propose plusieurs méthodes pour effectuer des opérations sur les éléments :

  • Accès aux éléments : Utilisez la méthode get() pour récupérer des éléments par index.
  • Modifier des éléments : Utilisez la méthode set() pour modifier un élément à un indice spécifique.
  • Suppression d'éléments : Utilisez la méthode remove() pour supprimer un élément par index et la méthode clear() pour supprimer tous les éléments.
  • Obtention de la taille de la liste de tableaux : Utilisez la méthode size() pour trouver le nombre d'éléments dans ArrayList.
  • Utilisation d'autres types : Stockez différents types de données dans ArrayList en utilisant des classes enveloppantes pour les types primitifs (par exemple, Integer, Boolean).

Conseils et bonnes pratiques

  • Capacité initiale : Si la taille du site ArrayList est connue à l'avance, spécifiez une capacité initiale afin d'améliorer les performances et de réduire le besoin de redimensionnement.
    ArrayList list = new ArrayList<>(50); // Initial capacity of 50
  • Type Sécurité : Utilisez les génériques pour garantir la sécurité des types et éviter les erreurs d'exécution.
    ArrayList numbers = new ArrayList<>(); // Type-safe declaration
  • Évitez les redimensionnements fréquents : Minimisez les ajouts et retraits fréquents d'éléments afin de réduire la charge des opérations de redimensionnement.
  • Utilisez un itérateur pour une suppression sûre : Lorsque vous supprimez des éléments au cours de l'itération, utilisez une adresse Iterator pour éviter ConcurrentModificationException.
    Iterator iterator = list.iterator();
    while (iterator.hasNext()) {
        if (condition) {
            iterator.remove();
        }
    }
  • Envisagez une liste de liens pour les insertions/suppressions fréquentes : Si des insertions et des suppressions fréquentes sont nécessaires, envisagez d'utiliser LinkedList, qui offre de meilleures performances pour ce type d'opérations.

Apprendre l'essentiel de Java

Développez vos compétences en Java à partir de la base et maîtrisez les concepts de programmation.
Commencez à apprendre gratuitement