Apakah ada cara sehingga hal-hal di bawah ini dapat dilakukan sebagai satu set operasi aliran, bukannya memeriksa secara eksplisit apakah recommendedProducts kosong lalu mengembalikan daftar default yang lain mengembalikan daftar yang difilter ?
public List<Product> getRecommendedProducts() {
List<Product> recommendedProducts
= this.newProducts
.stream()
.filter(isAvailable)
.collect(Collectors.toList());
if (recommendedProducts.isEmpty()) {
return DEFAULT_PRODUCTS;
}
return recommededProducts;
}
4
Apa yang salah dengan kode Anda yang ada?
—
Andy Turner
@AndyTurner Setuju. Kodenya bagus. Satu-satunya peningkatan yang akan saya lakukan adalah menggunakan operator ternary alih-alih pernyataan if-else . Ini masih masalah selera.
—
ETO
@ETO Tidak ada yang salah, tapi saya mencoba / berharap untuk mencari tahu apakah ada cara untuk melakukannya hanya dengan menggunakan API Stream tanpa pemeriksaan kondisi eksplisit. Terima kasih atas jawabannya - Saya suka saran operator ternary.
—
user3495691