Maison > Java > javaDidacticiel > le corps du texte

API Stream en Java 8 : Comment filtrer les éléments d'une collection à l'aide de la méthode filter()

WBOY
Libérer: 2023-08-01 08:43:48
original
3415 Les gens l'ont consulté

API Stream en Java 8 : Comment utiliser la méthode filter() pour filtrer des éléments dans une collection

Introduction :
Java 8 introduit l'API Stream, qui nous offre un moyen plus simple et plus efficace de traiter les collections. Stream est une nouvelle couche d'abstraction fournie par Java 8, qui nous permet de traiter diverses données de manière fonctionnelle. Dans l'API Stream, la méthode filter() est l'une des méthodes très utiles qui peuvent être utilisées pour filtrer les éléments de la collection. Dans cet article, nous examinerons plus en détail la méthode filter() et explorerons son utilisation et ses exemples.

1. Qu'est-ce que la méthode filter() ? La méthode filter() est une méthode d'opération intermédiaire dans l'API Stream. Il reçoit une interface fonctionnelle Predicate en paramètre, qui est utilisée pour filtrer les éléments de la collection. L'interface Predicate définit une méthode test(T t), qui est utilisée pour juger conditionnellement les paramètres donnés et renvoyer une valeur booléenne. La méthode filter() transmet chaque élément de la collection en tant que paramètre à la méthode test() de Predicate. Si true est renvoyé, l'élément est conservé, sinon il est ignoré.

2. Comment utiliser la méthode filter()

Pour utiliser la méthode filter(), vous devez d'abord créer une collection puis la convertir en Stream. Appelez ensuite la méthode filter() et utilisez l’interface fonctionnelle Predicate comme paramètre. La méthode filter() renverra un nouveau Stream contenant des éléments qui répondent aux critères. Enfin, traitez ce nouveau Stream en utilisant la méthode d’opération du terminal.

Voici un exemple de code qui montre l'utilisation de la méthode filter() :

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

public class FilterExample {
    public static void main(String[] args) {
        List<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        numbers.add(4);
        numbers.add(5);

        // 使用filter()方法筛选偶数
        List<Integer> evenNumbers = numbers.stream()
                .filter(n -> n % 2 == 0)
                .collect(Collectors.toList());

        System.out.println("偶数列表:" + evenNumbers);
    }
}
Copier après la connexion

Dans l'exemple ci-dessus, nous créons d'abord un objet List Ensuite, nous convertissons cet objet List en un objet Stream et utilisons la méthode filter() pour filtrer les nombres pairs. Dans les paramètres de la méthode filter(), nous utilisons l'expression Lambda n -> n % 2 == 0 pour déterminer si le nombre est pair. Enfin, nous utilisons la méthode collect() pour convertir les résultats filtrés en un objet List et l'imprimer.

Le résultat de sortie est : "Liste de nombres pairs : [2, 4]"

3. Scénarios d'application de la méthode filter()

La méthode filter() a de nombreux scénarios d'application en développement réel. Voici quelques scénarios courants :

    Filtrez les éléments qui remplissent une certaine condition. Par exemple, filtrez tous les étudiants de plus de 18 ans d’une liste d’étudiants.
  1. List<Student> adults = students.stream()
            .filter(s -> s.getAge() > 18)
            .collect(Collectors.toList());
    Copier après la connexion
    Filtrez une certaine gamme d'éléments. Par exemple, filtrez tous les nombres supérieurs ou égaux à 10 et inférieurs ou égaux à 20 d’une liste de nombres.
  1. List<Integer> range = numbers.stream()
            .filter(n -> n >= 10 && n <= 20)
            .collect(Collectors.toList());
    Copier après la connexion
    Filtrez les éléments non vides. Par exemple, filtrez toutes les chaînes non vides d’une liste de chaînes.
  1. List<String> nonEmptyStrings = strings.stream()
            .filter(s -> s != null && !s.isEmpty())
            .collect(Collectors.toList());
    Copier après la connexion
    Résumé : La méthode

    filter() est une méthode très couramment utilisée dans l'API Stream, qui peut nous aider à filtrer efficacement les éléments de la collection. En utilisant la méthode filter(), nous pouvons traiter les données de manière concise et élégante. J'espère que cet article vous aidera à comprendre l'utilisation de la méthode filter() et pourra être utilisé de manière flexible dans des projets réels.

    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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal