gpt4 book ai didi

java - 如果使用Java 8 Streams列表为空,则返回默认列表?

转载 作者:行者123 更新时间:2023-12-03 20:21:01 26 4
gpt4 key购买 nike

有什么方法可以将以下操作作为一组流操作执行,而不是显式检查RecommendationProducts是否为空,然后返回默认列表,否则返回过滤后的列表?

public List<Product> getRecommendedProducts() {
List<Product> recommendedProducts
= this.newProducts
.stream()
.filter(isAvailable)
.collect(Collectors.toList());

if (recommendedProducts.isEmpty()) {
return DEFAULT_PRODUCTS;
}

return recommededProducts;
}

最佳答案

您可以尝试以下方法:

List<Product> recommendedProducts 
= this.newProducts
.stream()
.filter(isAvailable)
.collect(Collectors.collectingAndThen(Collectors.toList(), list -> list.isEmpty() ? DEFAULT_PRODUCTS : list));

关于java - 如果使用Java 8 Streams列表为空,则返回默认列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58276601/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com