Maison >Java >javaDidacticiel >Quelle est l'importance de la méthode Collectors.filtering() dans Java 9 ?

Quelle est l'importance de la méthode Collectors.filtering() dans Java 9 ?

WBOY
WBOYavant
2023-08-27 14:17:05941parcourir

La classe

Java 9中Collectors.filtering()方法的重要性是什么?

Collectors est une partie importante de l'StreamAPI. Dans Java 9, une nouvelle méthode : filtering() a été ajoutée à la classe Collectors. La méthode Collectors.filtering() peut être utilisée pour filtrer les éléments du flux. Elle est similaire à la méthode filter() sur les flux. La méthode filter() traite les valeurs avant le regroupement, tandis que la méthode filtering() fonctionne bien avec la méthode Collectors.groupingBy() pour regrouper les valeurs avant que l'étape de filtrage ne se produise.

Syntaxe

<strong>public static <T, A, R> Collector<T, ?, R> filtering(Predicate<? super T><!--? super T--> predicate, Collector<? super T, A, R><!--? super T,A,R--> downstream)</strong>

Exemple

import java.util.stream.*;
import java.util.*;

public class FilteringMethodTest {
   public static void main(String args[]) {
     <strong> List<String></strong> list = <strong>List.of</strong>("x", "yy", "zz", "www");

      <strong>Map<Integer, List<String>></strong> result = list.stream()
                           .<strong>collect</strong>(<strong>Collectors.groupingBy</strong>(String::length,
                            <strong>Collectors.filtering</strong>(s -> !s.contains("<strong>z</strong>"),
                            <strong>Collectors.toList()</strong>)));

      System.out.println(result);
   }
}

Sortie

<strong>{1=[x], 2=[yy], 3=[www]}</strong>

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer