Java - Stream Filter 多条件筛选过滤
warning:
这篇文章距离上次修改已过192天,其中的内容可能已经有所变动。
在Java中,你可以使用Stream
的filter
方法来进行多条件筛选。你可以通过多个filter
方法连接多个条件,或者使用单个filter
方法并结合多个条件判断。以下是两种方法的示例代码:
方法1:多个filter
方法连接多个条件
import java.util.List;
import java.util.stream.Collectors;
public class FilterExample {
public static void main(String[] args) {
List<Item> items = ... // 初始化列表
List<Item> filteredItems = items.stream()
.filter(item -> item.getPrice() > 100) // 价格大于100
.filter(item -> item.getQuantity() > 10) // 数量大于10
.collect(Collectors.toList());
}
}
class Item {
private int price;
private int quantity;
// 构造函数、getter和setter省略
}
方法2:单个filter
方法结合多个条件判断
import java.util.List;
import java.util.stream.Collectors;
public class FilterExample {
public static void main(String[] args) {
List<Item> items = ... // 初始化列表
List<Item> filteredItems = items.stream()
.filter(item -> item.getPrice() > 100 && item.getQuantity() > 10)
.collect(Collectors.toList());
}
}
class Item {
private int price;
private int quantity;
// 构造函数、getter和setter省略
}
在这两种方法中,filter
方法都被用来对列表中的元素进行筛选。第一种方法通过链式调用多个filter
方法实现条件的逐步缩小筛选范围,而第二种方法则是在单个filter
方法中通过逻辑与操作符&&
组合多个条件。两种方法都可以有效地筛选出同时满足多个条件的元素。
评论已关闭