Maison > Java > javaDidacticiel > Comment puis-je combiner efficacement deux listes en Java ?

Comment puis-je combiner efficacement deux listes en Java ?

Susan Sarandon
Libérer: 2024-12-08 20:28:10
original
860 Les gens l'ont consulté

How Can I Efficiently Combine Two Lists in Java?

Joindre efficacement deux listes en Java

Combiner plusieurs listes en une seule collection est une tâche courante en Java. Bien que le segment de code fourni utilisant addAll() soit fonctionnel, il implique la création d'une nouvelle liste et l'itération sur les deux listes d'origine, ce qui peut s'avérer inefficace pour les grands ensembles de données.

Java 8 et versions ultérieures :

Pour Java 8 et les versions ultérieures, une approche plus concise et efficace consiste à exploiter les flux Java :

List<String> newList = Stream.concat(listOne.stream(), listTwo.stream())
                             .collect(Collectors.toList());
Copier après la connexion

Ce code crée un nouveau flux en concaténant les flux des deux listes et collecte les éléments dans une nouvelle liste nommée newList. Il préserve les listes d'origine et effectue l'opération paresseusement, minimisant la consommation de mémoire et améliorant les performances.

Java 16 et versions ultérieures :

En Java 16 et versions ultérieures, une version simplifiée de la solution basée sur le flux peut être utilisée :

List<String> newList = Stream.concat(listOne.stream(), listTwo.stream()).toList();
Copier après la connexion

Ce code utilise la méthode toList() introduite en Java 16, qui crée une nouvelle liste directement à partir du flux sans avoir besoin d'un collecteur explicite.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal