[Java] Zusammenfassung, wie Lambda-Ausdrücke weggelassen werden

Hier finden Sie eine Zusammenfassung der Abkürzung von Lambda-Ausdrücken. Es wird in Prüfungen wie Java Silver gefragt, also hoffe ich, dass es den Prüflingen hilft. Abschließend werde ich zusammenfassen, wie man sich erinnert.

Wenn Sie die Lambda-Formel überhaupt nicht verstehen, klicken Sie bitte hier. Grundlegendes zu Java 8 Lambda-Ausdrücken

Erstens die Grundform des Lambda-Typs.

Grundform


Predicate<String> javaChecker = (String s) -> { return s.equals("Java"); };

Mal sehen, was hier weggelassen werden kann.

Argumenttyp

Erstens ist der Argumenttyp optional.

Predicate<String> javaChecker = (s) -> { return s.equals("Java"); };

Wenn jedoch mehrere Argumente vorhanden sind, kann nicht nur eines weggelassen werden.

//Kompilierungsfehler
BiFunction<Integer, Integer, Integer> adder = (a, Integer b) -> { return a + b; };

Streit ()

Das Argument () kann auch weggelassen werden.

Predicate<String> javaChecker = s -> { return s.equals("Java"); };

Es gibt jedoch zwei Bedingungen. Wenn Sie einen Typ angeben, kann dieser zunächst nicht weggelassen werden.

//Kompilierungsfehler
Predicate<String> javaChecker = String s -> { return s.equals("Java"); };

Zweitens kann es nicht weggelassen werden, selbst wenn es mehrere Argumente gibt.

//Kompilierungsfehler
BiFunction<Integer, Integer, Integer> adder = a, b -> { return a + b; };

Ich denke, es ist gut daran zu denken, dass () nur weggelassen werden kann, wenn das Argument ein Wort ist.

Methode {}

Die Methode {} kann auch weggelassen werden.

Consumer<String> buyer = goods -> System.out.println(goods + "ich kaufte");

Hier gibt es auch Bedingungen. Erstens kann es nicht weggelassen werden, wenn zwei oder mehr Sätze vorhanden sind.

//Kompilierungsfehler
Consumer<String> buyer = goods -> String message = "ICH," + goods;
                                  System.out.println(message + "ich kaufte");

Als nächstes schreiben Sie return und es kann nicht weggelassen werden.

//Kompilierungsfehler
Predicate<String> javaChecker = s -> return s.equals("Java");

Wenn Sie jedoch die Rückgabe weglassen, kann sie normal ausgeführt werden.

Predicate<String> javaChecker = s -> s.equals("Java");

Denken Sie daran, dass {} nur weggelassen werden kann, wenn der Prozess eine Anweisung ist. Wenn ein Rückgabewert vorhanden ist, kann die Rückgabe als Satz weggelassen werden.

return Wie oben erwähnt, kann die Rückgabe weggelassen werden, sie kann jedoch nicht weggelassen werden, indem das {} der Methode belassen wird.

//Kompilierungsfehler
Predicate<String> javaChecker = s ->{ s.equals("Java"); };

Auch wenn Sie die Rückgabe weglassen möchten, wird {} weggelassen.

Zusammenfassung

Die Zusammenfassung ist wie folgt.

Teil weggelassen Bedingungen
Argumenttyp 全Argumenttypを省略すること
Vom Argument() Nur für ein Wort
Von der Methode{} Nur für eine Aussage
Wenn es einen Rückgabewert gibt, setzen Sie ihn ohne Auslassung
return Von der Methode{}Auslassen und einstellen

Recommended Posts

[Java] Zusammenfassung, wie Lambda-Ausdrücke weggelassen werden
Verwendung von Java-Lambda-Ausdrücken
[Java Silver] Zusammenfassung der Punkte im Zusammenhang mit Lambda-Ausdrücken
[java] Zusammenfassung des Umgangs mit char
[Java] [Maven3] Zusammenfassung der Verwendung von Maven3
[java] Zusammenfassung des Umgangs mit Zeichenketten
[Java] Zusammenfassung der regulären Ausdrücke
[Java] Einführung in den Lambda-Ausdruck
Zusammenfassung der Java-Kommunikations-API (1) Verwendung von Socket
Zusammenfassung der Java-Kommunikations-API (3) Verwendung von SocketChannel
Zusammenfassung der Java-Kommunikations-API (2) Verwendung von HttpUrlConnection
Zusammenfassung der Implementierung von Standardargumenten in Java
[Einführung in Java] Über Lambda-Ausdrücke
Der Ursprung von Java-Lambda-Ausdrücken
So erstellen Sie eine Java-Kalenderzusammenfassung
Ich habe versucht, Java-Lambda-Ausdrücke zusammenzufassen
Zusammenfassung zum Schreiben von Anmerkungsargumenten
Zusammenfassung der Auswahl von Elementen in Selen
Zusammenfassung zum Erstellen von selbst erstellten JSF-Tags
Verwendung des Java-Frameworks mit AWS Lambda! ??
Verstehen Sie Java 8 Lambda-Ausdrücke
Verwendung der Java-API mit Lambda-Ausdrücken
Über Java-Lambda-Ausdrücke
Erläutern Sie Java 8-Lambda-Ausdrücke
Zusammenfassung der Java-Unterstützung 2018
[Java] So erhalten Sie die URL der Übergangsquelle
[Java] Arten von Kommentaren und wie man sie schreibt
So stellen Sie Java mit Serverless Framework für AWS Lambda bereit
Verwenden Sie Java-Lambda-Ausdrücke außerhalb der Stream-API
[Java] So erhalten Sie den Maximalwert von HashMap
Zusammenfassung der Kenntnisse, die zum Bestehen von Java SE8 Silver erforderlich sind
Stand April 2018 So installieren Sie Java 8 auf einem Mac
Ausführen des WebCamCapture-Beispiels von NyARToolkit für Java
Hinweise zur Verwendung regulärer Ausdrücke in Java
[Java] Verwendung von Map
So deinstallieren Sie Java 8 (Mac)
Java - So erstellen Sie JTable
[Java11] Stream-Zusammenfassung - Vorteile von Stream -
Verwendung von Java Optional
So minimieren Sie Java-Images
Wie schreibe ich einen Java-Kommentar
Verwendung der Java-Klasse
[Java] Zusammenfassung der Operatoren (Operator)
Java8-Stream, Zusammenfassung des Lambda-Ausdrucks
[Java] Verwendung von removeAll ()
[Java] So zeigen Sie Wingdings an
Verwendung von Java Map
So legen Sie Java-Konstanten fest
Zusammenfassung der Grundlagen der Java-Sprache
Zusammenfassung der Java Math Klasse
Verwendung von Java-Variablen
So konvertieren Sie Java Base
[Java] So implementieren Sie Multithreading
[Java] Zusammenfassung der Steuerungssyntax