Wenn eine Java-Methode eine Function<? super T, ? extends U>
akzeptiert, ist es möglich, Methodenverweise in einer Syntax wie der folgenden bereitzustellen: MyClass::myMethod
.
Ich frage mich jedoch, ob es eine Möglichkeit gibt, mehrere Methodenaufrufe zu verketten. Hier ist ein Beispiel, um den Fall zu veranschaulichen.
%Vor%Ich frage mich, ob es eine Syntax gibt, um dies in einen Lambda-Ausdruck zu übersetzen. Ich hoffe, dass es so etwas wie folgt gibt:
%Vor%Gibt es alternativ eine Dienstprogrammklasse zum Zusammenführen von Funktionen?
%Vor% Java 8 Function
s kann mit der Methode andThen
:
Beachten Sie, dass String::trim
in Ihrem aktuellen Beispiel nicht kompiliert wird, da die trim
-Methode keine Eingabe akzeptiert. Daher entspricht sie nicht der funktionalen Schnittstelle Function
(das gleiche gilt für String::toUpperCase
).
Tags und Links java java-8 lambda java-stream