Sobes.tech
Middle

Ce sunt expresiile lambda în Java și ce posibilități oferă?

sobes.tech AI

Răspuns de la AI

Expresiile lambda în Java sunt funcții anonime care permit scrierea unui cod mai concis, mai ales atunci când se lucrează cu interfețe funcționale. Ele constau într-un bloc de parametri, săgeata -> și corpul funcției.

Funcții principale:

  • Reducerea codului: Elimină necesitatea creării de clase interne anonime pentru implementarea interfețelor funcționale.
  • Programare funcțională: Simplifică aplicarea conceptelor de programare funcțională, cum ar fi transmiterea funcțiilor ca argumente.
  • Îmbunătățirea lizibilității: În unele cazuri, fac codul mai ușor de înțeles și perceput.
  • Lucru cu API-ul Stream: Sunt fundamentul pentru lucrul eficient cu fluxurile de date în Java 8 și versiunile ulterioare.

Exemplu:

// Metoda tradițională cu clasă anonimă
Runnable traditionalRunnable = new Runnable() {
    @Override
    public void run() {
        System.out.println("Salut din runnable tradițional");
    }
};

// Cu expresie lambda
Runnable lambdaRunnable = () -> System.out.println("Salut din lambda runnable");

Expresia lambda se leagă de o interfață funcțională — o interfață cu o singură metodă abstractă. Tipul parametrilor și valoarea de returnare a lambda-ului sunt determinate de semnătura acestei metode abstracte.