Java

java中怎么用stream().filter过滤多个条件

小亿
1648
2023-12-23 02:08:16
栏目: 编程语言

在Java中,可以使用stream().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> filteredNumbers = numbers.stream()
                .filter(n -> n % 2 == 0) // 过滤偶数
                .filter(n -> n > 5) // 过滤大于5的数
                .collect(Collectors.toList());

        System.out.println(filteredNumbers); // 输出: [6, 8, 10]
    }
}

在上述代码中,我们使用stream()方法将列表转换为流,然后使用filter()方法进行多次过滤。每个filter()方法都接受一个Lambda表达式作为参数,该Lambda表达式定义了过滤条件。最后,使用collect(Collectors.toList())方法将过滤后的元素收集到一个新的列表中。

上述示例中的过滤条件是偶数和大于5的数,你可以根据自己的需求定义任意多个过滤条件。

0
看了该问题的人还看了