Maison >Java >javaDidacticiel >Comment puis-je combiner efficacement deux listes en 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());
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();
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!