Sobes.tech
Junior — Middle

Pouvez-vous donner un exemple de fonctions de réduction utilisées dans l'API Stream pour le traitement des données?

sobes.tech IA

Réponse de l'IA

Dans l'API Stream, les fonctions de réduction (réducteurs) sont utilisées pour réduire les éléments d'un flux en une seule valeur. Exemples principaux:

  • reduce(BinaryOperator<T> accumulator) — réduit les éléments en appliquant une opération binaire.
  • reduce(T identity, BinaryOperator<T> accumulator) — réduction avec une valeur initiale.

Exemple : calcul de la somme des nombres dans une liste

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.stream()
                 .reduce(0, (a, b) -> a + b);
System.out.println(sum); // 15

Autre exemple — concaténation de chaînes :

List<String> words = Arrays.asList("Java", "Stream", "API");
String result = words.stream()
                     .reduce("", (a, b) -> a + b + " ").trim();
System.out.println(result); // "Java Stream API"

Ainsi, les réducteurs permettent d'agréger les données d'un flux en une seule valeur finale.