Sobes.tech
Middle

Ce sunt expresiile lambda în Java și ce rol joacă acestea?

sobes.tech AI

Răspuns de la AI

Expresiile lambda în Java sunt funcții anonime care permit transmiterea codului ca date.

Rolul expresiilor lambda:

  • Simplificarea codului: Permite scrierea unui cod mai concis și mai ușor de citit, mai ales atunci când se lucrează cu interfețe funcționale.
  • Programare funcțională: Sprijină paradigma de programare funcțională în Java, făcând-o mai flexibilă.
  • Îmbunătățirea lucrului cu colecțiile: Sunt utilizate în API-ul Stream pentru operații precum filtrarea, maparea și reducerea.
  • Reducerea codului boilerplate: Înlocuiesc în multe cazuri clasele interne anonime.

Exemplu:

// Utilizarea unei clase interne anonime
Runnable classicRunnable = new Runnable() {
    @Override
    public void run() {
        System.out.println("Salut din vechea metodă!");
    }
};

// Utilizarea lambda
Runnable lambdaRunnable = () -> System.out.println("Salut din lambda!");
// Utilizarea lambda cu API-ul Stream pentru filtrare
List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David");
List<String> filteredNames = names.stream()
                                  .filter(name -> name.startsWith("A"))
                                  .collect(Collectors.toList());