在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中。
通過這種方式,我們可以實現多個條件的篩選操作,并且可以靈活地進行組合。