以下がストリーム操作の1つのセットとして実行できるようにする方法はありますか?recommendedProductsが空であるかどうかを明示的にチェックせずにデフォルトのリストを返すか、またはフィルターされたリストを返しますか?
public List<Product> getRecommendedProducts() {
List<Product> recommendedProducts
= this.newProducts
.stream()
.filter(isAvailable)
.collect(Collectors.toList());
if (recommendedProducts.isEmpty()) {
return DEFAULT_PRODUCTS;
}
return recommededProducts;
}
4
既存のコードの何が問題になっていますか?
—
アンディターナー
@AndyTurner同意する。コードはそのままです。私が行う唯一の改善は、if-elseステートメントの代わりに三項演算子を使用することです。それはまだ好みの問題です。
—
ETO
@ETO何も問題はありませんが、明示的な条件チェックなしでStream APIを使用するだけでそれを行う方法があるかどうかを確認しようとしていました。返信ありがとう-三項演算子の提案が好きです。
—
user3495691