Java - Stream Filter 多条件筛选过滤
    		       		warning:
    		            这篇文章距离上次修改已过442天,其中的内容可能已经有所变动。
    		        
        		                
                在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方法中通过逻辑与操作符&&组合多个条件。两种方法都可以有效地筛选出同时满足多个条件的元素。
评论已关闭