Middle
Was sind Lambda-Ausdrücke in Java?
sobes.tech KI
Antwort von AI
Ausdruck in Java — das ist eine anonyme Funktion. Es ermöglicht, Funktionalität als Argument einer Methode oder als Code als Daten zu betrachten.
Hauptmerkmale:
- Anonymität: Hat keinen Namen.
- Funktionale Schnittstelle: Der Lambda-Ausdruck ist immer mit einer funktionalen Schnittstelle verbunden (Schnittstelle mit einer einzigen abstrakten Methode).
- Syntax:
(Parameter) -> { Körper }
Beispiel für die Verwendung mit der funktionalen Schnittstelle Consumer:
import java.util.function.Consumer;
// Die funktionale Schnittstelle Consumer<T> hat eine abstrakte Methode accept(T t)
Consumer<String> Begrüßung = (name) -> {
System.out.println("Hallo, " + name);
};
Begrüßung.accept("Welt"); // Ausgabe: Hallo, Welt
Beispiel für die Verwendung mit der Schnittstelle Runnable:
// Die Schnittstelle Runnable hat eine abstrakte Methode run()
Runnable aufgabe = () -> {
System.out.println("Aufgabe wird in einem separaten Thread ausgeführt");
};
new Thread(aufgabe).start(); // Startet die Aufgabe in einem neuen Thread
Syntax-Varianten:
- Ohne Parameter:
() -> { System.out.println("Hallo"); } - Ein Parameter ohne Klammern:
name -> System.out.println("Hallo, " + name) - Mehrere Parameter mit Klammern und Typen:
(int a, int b) -> { return a + b; } - Mehrere Parameter ohne Typen (Typinferenz):
(a, b) -> a + b - Einzeiliger Körper ohne
return:(a, b) -> a + b - Mehrzeiliger Körper mit geschweiften Klammern und
return(falls erforderlich):(a, b) -> { int summe = a + b; return summe; }
Lambda-Ausdrücke machen den Code kompakter, lesbarer und ermöglichen die Verwendung funktionaler Programmierung in Java.