Middle
Que fait la méthode collect en Java?
sobes.tech IA
Réponse de l'IA
La méthode collect dans l'API Stream de Java effectue une réduction mutable des éléments du flux en un seul objet résultant. Elle prend en argument un Collector et permet d'agréger des données de différentes manières, par exemple en collectant des éléments dans des collections, en les regroupant ou en appliquant des fonctions d'agrégation (somme, moyenne, etc.).
Les composants principaux de Collector:
supplier(): Crée un nouveau conteneur résultant vide.accumulator(): Ajoute l'élément courant du flux au conteneur résultant.combiner(): Combine deux conteneurs résultants (utilisé dans les flux parallèles).finisher(): Applique une transformation finale au conteneur résultant (optionnel).
Les implémentations populaires de Collector sont fournies par la classe Collectors:
toList(),toSet(),toMap(): Collecte des éléments dansList,Set,Maprespectivement.joining(): Fusionne des éléments de chaîne.groupingBy(): Regroupe des éléments selon un critère donné.counting(),summingInt(),averagingDouble(): Comptage, somme, moyenne.
Exemple d'utilisation pour collecter dans une liste:
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class CollectExample {
public static void main(String[] args) {
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
List<String> collectedNames = names.stream()
.collect(Collectors.toList()); // Collecte dans une List
System.out.println(collectedNames);
}
}