Sobes.tech
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.