Middle
Co jsou to lambda výrazy v Javě a jaké možnosti nabízejí?
sobes.tech AI
Odpověď od AI
Výrazy lambda v Javě jsou anonymní funkce, které umožňují psát kód stručněji, zejména při práci s funkčními rozhraními. Skládají se z bloku parametrů, šipky -> a těla funkce.
Hlavní funkce:
- Zkrácení kódu: Odstraňují potřebu vytváření anonymních vnitřních tříd pro implementaci funkčních rozhraní.
- Funkcionální programování: Zjednodušují použití konceptů funkcionálního programování, jako je předávání funkcí jako argumentů.
- Zlepšení čitelnosti: V některých případech činí kód srozumitelnějším a snadněji pochopitelným.
- Práce s API Stream: Jsou základem pro efektivní práci s datovými proudy v Java 8 a novějších verzích.
Příklad:
// Tradiční způsob s anonymní třídou
Runnable traditionalRunnable = new Runnable() {
@Override
public void run() {
System.out.println("Ahoj z tradičního runnable");
}
};
// S použitím lambda výrazu
Runnable lambdaRunnable = () -> System.out.println("Ahoj z lambda runnable");
Lambda výraz je přiřazen k funkčnímu rozhraní — rozhraní s jednou abstraktní metodou. Typ parametrů a návratová hodnota lambda jsou určeny signaturou této abstraktní metody.