Maison >Java >javaDidacticiel >Quel est le moyen le plus efficace d'initialiser une ArrayList en Java ?

Quel est le moyen le plus efficace d'initialiser une ArrayList en Java ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-27 19:43:14870parcourir

What's the Most Efficient Way to Initialize an ArrayList in Java?

Initialiser une ArrayList sur une seule ligne : explorer diverses approches

Pour initialiser une ArrayList avec des éléments spécifiques, les développeurs sont souvent confrontés au dilemme de choisir la méthode la plus efficace et la plus succincte . Une approche largement utilisée consiste à utiliser le mot-clé new, à créer une ArrayList vide, puis à ajouter des éléments à l'aide de la méthode add.

Cependant, une solution plus concise consiste à exploiter la méthode asList sur la classe Arrays. En passant un tableau de valeurs à asList, on peut créer une liste immuable. Envelopper cette liste dans un constructeur ArrayList la convertit en une liste mutable qui prend en charge l'ajout et la suppression d'éléments.

Par exemple, considérons le code suivant :

ArrayList<String> places = new ArrayList<String>(
    Arrays.asList("Buenos Aires", "Córdoba", "La Plata"));

Cette approche combine les avantages des deux le mot clé new et la méthode asList, permettant l'initialisation d'une ArrayList avec une seule ligne de code.

Mais existe-t-il une option plus simple ? Si l'exigence n'est pas explicitement une ArrayList, on peut utiliser l'interface List à la place. La méthode Arrays.asList peut créer une liste immuable sans avoir besoin de l'envelopper dans une ArrayList.

List<String> places = Arrays.asList("Buenos Aires", "Córdoba", "La Plata");

Pour les scénarios où un seul élément est présent, la méthode Collections.singletonList constitue une alternative plus intéressante.

List<String> places = Collections.singletonList("Buenos Aires");

L'utilisation de la méthode singletList garantit l'immuabilité, ce qui signifie que toute tentative de modification de la liste résultante entraînera un exception. Pour les listes mutables, pensez à envelopper la liste immuable dans une ArrayList.

ArrayList<String> places = new ArrayList<>(Arrays.asList("Buenos Aires", "Córdoba", "La Plata"));

N'oubliez pas d'importer le package java.util.Arrays pour cette approche.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn