Java

Java Stream中如何实现多个条件的筛选

小樊
349
2024-08-17 15:41:35
栏目: 编程语言

在Java Stream中实现多个条件的筛选可以通过使用多个filter操作来实现。filter操作接受一个Predicate函数式接口作为参数,用来对Stream中的元素进行条件筛选。

例如,我们有一个包含Person对象的Stream,我们想要筛选出满足年龄大于18且性别为男性的Person对象,可以通过以下方式实现:

List<Person> filteredPersons = persons.stream()
    .filter(person -> person.getAge() > 18) // 第一个条件:年龄大于18
    .filter(person -> person.getGender().equals("male")) // 第二个条件:性别为男性
    .collect(Collectors.toList());

在上面的代码中,我们使用了两次filter操作,分别对年龄和性别进行筛选。最终使用collect方法将符合条件的Person对象收集到一个List中。

通过这种方式,我们可以实现多个条件的筛选操作,并且可以灵活地进行组合。

0
看了该问题的人还看了