Junior
Mi az a lambda kifejezések Java-ban?
sobes.tech MI
Válasz az MI-től
A Java-ban a lambda kifejezés egy névtelen függvény, amely lehetővé teszi kódrészek objektumként való átadását. Ez egy tömör módja a funkcionális interfészek (egy absztrakt metódust tartalmazó interfészek) megvalósításának.
A lambda kifejezés szintaxisa:
- Paraméterlista (üres is lehet).
->operátor.- A kifejezés törzse (lehet egy kifejezés vagy egy utasításokat tartalmazó blokk).
Példák:
// Lambda a Runnable funkcionális interfészhez
Runnable feladat = () -> System.out.println("Helló lambda-ból!");
// Lambda a Comparator<Integer> funkcionális interfészhez
Comparator<Integer> összehasonlító = (a, b) -> a.compareTo(b);
// Lambda blokk utasításokkal
Consumer<String> köszönő = név -> {
String üzenet = "Helló, " + név + "!";
System.out.println(üzenet);
};
Fő jellemzők:
- Névtelen: nincs nevük.
- Funkcionális interfészek: funkcionális interfészek megvalósítására használják.
- Tömör: lehetővé teszik a kód rövidebb írását, mint az anonim osztályok esetén.
- Változók elfogása: képesek elfogni a környező kontextusból
hatékonyan véglegeshelyi változókat.
A lambda kifejezések használata javítja a kód olvashatóságát és egyszerűsíti a funkcionális programozásra orientált API-k, például a Stream API, használatát.