API Stream en Java 8 : Comment utiliser la méthode réduire() pour effectuer des opérations d'agrégation sur les collections
Introduction :
Dans Java 8, l'API Stream a été introduite, qui fournit un moyen plus puissant et plus pratique de traiter les données de collection. La méthode réduire() de l'API Stream joue un rôle important dans l'opération d'agrégation de la collection. Cet article présentera l'utilisation de la méthode réduire() et fournira quelques exemples de code.
1. Présentation de la méthode réduire()
La méthode réduire() est l'une des méthodes principales de l'API Stream pour les opérations d'agrégation sur les collections. Il accepte un paramètre de type BinaryOperator, qui définit la manière dont les éléments de la collection sont agrégés. La méthode réduire() applique l'opération d'agrégation aux éléments de la collection un par un et renvoie un résultat facultatif. La méthode
reduce() a deux versions surchargées :
La première version La réduction( ) accepte une identité de valeur initiale et un accumulateur d'opérateur binaire. Il prend la valeur initiale comme point de départ du calcul et applique chaque élément à l'accumulateur, renvoyant finalement le résultat agrégé.
La deuxième version de la méthode réduire() n'accepte qu'un accumulateur d'opérateur binaire. Il ne fournit pas de valeur initiale, il renvoie donc un objet facultatif représentant les résultats possibles.
2. Exemples d'utilisation de la méthode réduire()
Voici quelques exemples de code montrant différentes utilisations de la méthode réduire() :
Sommez les éléments de l'ensemble :
Liste
int sum = number.stream()
.reduce(0, (a, b) -> a + b);
System.out.println(sum); // Sortie : 15
Trouver la valeur maximale de l'ensemble éléments :
Liste
Facultatif
.reduce(Integer::max);
System.out.println(max.orElse(0 )); / / Sortie : 5
Concaténer des chaînes :
List
String result = strings.stream()
.reduce("", (a, b) -> a + " " + b);
System.out.println(result); // Sortie : API Java Stream
Opération d'agrégation personnalisée :
List
new Person("Charlie", 25)
);
int totalAge = people.stream() .reduce(0, (sum, p) -> sum + p.getAge(), (a, b) -> a + b);
System.out.println(totalAge); Dans cet exemple, nous utilisons un opérateur binaire personnalisé pour additionner les âges des objets Person. Conclusion : La méthode
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!