Sobes.tech
Middle

Šta su lambda izrazi u Javi i koje mogućnosti pružaju?

sobes.tech АИ

Одговор од АИ

Izrazi lambda u Javi su anonimne funkcije koje omogućavaju kraće pisanje koda, posebno pri radu sa funkcionalnim interfejsima. Sastoje se od bloka parametara, strelice -> i tela funkcije.

Glavne mogućnosti:

  • Skraćivanje koda: Uklanjaju potrebu za kreiranjem anonimnih unutrašnjih klasa za implementaciju funkcionalnih interfejsa.
  • Funkcionalno programiranje: Olakšavaju primenu koncepta funkcionalnog programiranja, kao što je prosleđivanje funkcija kao argumenata.
  • Poboljšanje čitljivosti: U nekim slučajevima, čine kod razumljivijim i lakšim za percepciju.
  • Rad sa API-jem Stream: Osnova su za efikasno rad sa tokovima podataka u Javi 8 i novijim verzijama.

Primer:

// Tradicionalan način sa anonimnom klasom
Runnable traditionalRunnable = new Runnable() {
    @Override
    public void run() {
        System.out.println("Zdravo iz tradicionalnog runnable-a");
    }
};

// Sa lambda izrazom
Runnable lambdaRunnable = () -> System.out.println("Zdravo iz lambda runnable-a");

Lambda izraz se povezuje sa funkcionalnim interfejsom — interfejsom sa jednom apstraktnom metodom. Tip parametara i povratna vrednost lambda izraza određuju se potpisom te apstraktne metode.