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

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

Java中的 IntStream filter() 示例

在Java 8及以上版本中,IntStream filter()方法是用来对int型流进行过滤,返回经过筛选的一个新的流。

语法
IntStream filter(IntPredicate predicate)

predicate是一个用来筛选的条件谓词(Predicate), 带有 boolean 类型返回值。

示例

下面是一个示例代码,通过使用 filter() 方法,过滤出所有偶数的流,并计算它们的平均数。

import java.util.stream.IntStream;

public class IntStreamFilterExample {
    public static void main(String[] args) {
        int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
        double averageOfEvenNumbers = IntStream.of(numbers)
                .filter(n -> n % 2 == 0)
                .average()
                .getAsDouble();
        System.out.println("平均数:" + averageOfEvenNumbers);
    }
}

以上示例输出为:

平均数:5.0

以上这段代码使用 IntStream.of() 方法将一个 int 数组转换成 IntStream 流,接着使用 filter() 方法过滤出该流的所有偶数,然后调用 average() 方法,求取筛选后的平均值。

总结

IntStream filter() 方法用于过滤出满足条件的整数,返回一个新的流。它能够方便地操作一个整数数据集,处理流程简洁高效。