- Autore

- Nome
- Nelson Silva
- Social
Introduzione
Le espressioni lambda, introdotte in Java 8, hanno rivoluzionato il modo in cui scriviamo e comprendiamo il codice in Java, rendendolo più conciso, leggibile ed espressivo.
Cos'è il Lambda?
Il Lambda è un concetto che consente di rappresentare un'istanza di un'interfaccia funzionale in modo più breve e semplificato. In sostanza, è un modo per scrivere funzioni anonime: funzioni senza nome.
Vantaggi del Lambda
- Concisione: Il codice diventa più snello e pulito.
- Leggibilità: Facilita la lettura e la comprensione del codice.
- Flessibilità: Può essere utilizzato insieme alle nuove funzionalità di Java 8, come gli Streams.
Esempio di Utilizzo
package com.caffeinealgorithm.programaremjava;
import java.util.ArrayList;
import java.util.List;
public class Lambda {
private List<String> persone = new ArrayList<>();
public void Run() {
persone.add("Nelson Silva");
persone.add("Larissa Fernandes");
persone.add("Pedro Henrique");
persone.add("Raquel Soares");
// elencaPersone();
persone.forEach((persona) -> System.out.printf("Nome: %s\n", persona));
}
private void elencaPersone() {
for (String persona : persone)
System.out.printf("Nome: %s\n", persona);
}
}
/*
Nome: Nelson Silva
Nome: Larissa Fernandes
Nome: Pedro Henrique
Nome: Raquel Soares
*/
Come Funziona?
Nell'esempio presentato in precedenza, vediamo l'utilizzo del lambda per scorrere una lista e stampare ogni elemento. Qui, il metodo forEach accetta un'espressione lambda, che definisce cosa fare con ogni elemento della lista.
Altri Esempi
- Ordinare una lista:
List<Integer> numeri = Arrays.asList(5, 2, 8, 3, 1);
numeri.sort((n1, n2) -> n1.compareTo(n2));
System.out.println(numeri);
- Creare un thread:
new Thread(() -> System.out.println("Thread in esecuzione con Lambda!")).start();
- Operazioni con gli Streams:
long quantita = persone.stream()
.filter(persona -> persona.startsWith("N"))
.count();
System.out.println("Numero di persone il cui nome inizia con la lettera N: " + quantita);
Conclusione
Le espressioni lambda sono una potente aggiunta al linguaggio Java, che consente agli sviluppatori di scrivere codice in modo più efficiente ed espressivo. Inoltre, i lambda sono fondamentali per sfruttare al massimo le nuove funzionalità di Java, in particolare quelle introdotte in Java 8, come gli Streams.