📜  Java中的 Stream filter() 示例(1)

📅  最后修改于: 2023-12-03 15:16:26.658000             🧑  作者: Mango

Java中的 Stream filter() 示例

Stream是Java 8中引入的一个新特性,它可以用于处理集合数据。其中的filter()方法是Stream类中的一个重要方法,用于筛选集合中满足某种条件的元素。本文将为程序员介绍Java中的Stream filter()方法的用法和示例。

filter()方法概述

filter()方法用于过滤Stream中的元素,返回满足给定条件的新的Stream。该方法使用一个Predicate接口作为参数,Predicate接口代表一个函数,它接受一个参数并返回一个布尔值。只有返回true的元素才会被保留在新的Stream中。

filter()方法的用法如下:

Stream<T> filter(Predicate<? super T> predicate)

该方法的参数是一个Predicate接口,它可以使用Lambda表达式或方法引用来定义过滤条件。

示例

假设我们有一个保存了一组整数的List,现在我们想要筛选出所有的偶数。我们可以使用filter()方法来实现这个目标。

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

public class Main {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
        
        List<Integer> evenNumbers = numbers.stream()
                                           .filter(n -> n % 2 == 0)
                                           .collect(Collectors.toList());
        
        System.out.println(evenNumbers); // 输出:[2, 4, 6, 8, 10]
    }
}

在上面的示例中,我们首先创建了一个包含整数的List。然后,我们通过stream()方法将其转换为Stream。

接下来,我们使用filter()方法来筛选出所有满足条件的偶数。在Lambda表达式中,我们使用取模操作符来判断一个数是否为偶数。

最后,我们使用collect()方法将过滤后的元素收集到一个新的List中,并打印出来。

结论

通过filter()方法,我们可以轻松地筛选出集合中满足某种条件的元素。这使得我们可以更加高效地处理集合数据。在实际开发中,我们可以根据不同的需求使用filter()方法来过滤出符合特定条件的元素。

希望本文对你理解Java中Stream的filter()方法有所帮助!