Wie schreibe ich if/else in einen Java-Stream? [Duplikat]

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Wie schreibe ich if/else in einen Java-Stream? [Duplikat]

by Anonymous » 24 Dec 2024, 09:08

Wie konvertiere ich diese folgende if/else-Anweisung in eine Java-Stream-Pipeline?
Ich habe ein Optional und wenn das vorhanden ist, mache ich einen Datenbankaufruf, der a zurückgibt Liste und ich möchte über diese Liste streamen und wenn eine bestimmte Bedingung erfüllt ist, möchte ich einen Vorgang ausführen und wenn nicht, möchte ich einen anderen Vorgang ausführen
if(returnOptional().isPresent) {
List list = db.findAllById(id);
if(list.stream().anyMatch(x -> /*predicate*/)){
//perform function
} else {
//perform function
}
}

Teillösung:
returnOptional()
.map(obj -> {
List list = db.call();
return list.stream()
.filter(/*Predicate*/)
.findAny().map(object -> /*function*/)
.orElse(null);
}).orElseGet(() -> /*function*/);

Top