stream流filter多条件过滤
时间: 2023-09-13 21:08:00 浏览: 158
多条件筛选
可以使用Java 8的Stream API中的filter方法,结合多个Predicate条件进行过滤,例如:
```java
List<String> list = Arrays.asList("apple", "banana", "cherry", "date", "eggfruit");
Predicate<String> startsWithC = str -> str.startsWith("c");
Predicate<String> lengthIs3 = str -> str.length() == 3;
List<String> filteredList = list.stream()
.filter(startsWithC.and(lengthIs3))
.collect(Collectors.toList());
System.out.println(filteredList); // Output: [cat]
```
这段代码会将列表中以字母"c"开头且长度为3的元素过滤出来。
阅读全文