Finden Sie das erste Element anhand des Prädikats

Ich habe gerade angefangen, mit Java 8-Lambdas zu spielen, und ich versuche, einige der Dinge, die ich gewohnt bin, in funktionale Sprachen umzusetzen.

Beispielsweise verfügen die meisten funktionalen Sprachen über eine Suchfunktion, die Sequenzen verarbeitet, oder über Listen, die das erste Element zurückgeben, für das sich das Prädikat befindettrue. Die einzige Möglichkeit, dies in Java 8 zu erreichen, ist:

lst.stream()
    .filter(x -> x > 5)
    .findFirst()

Dies scheint mir jedoch ineffizient zu sein, da der Filter die gesamte Liste durchsucht, zumindest nach meinem Verständnis (was falsch sein könnte). Gibt es einen besseren Weg?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage