Junior
Cosa sono le espressioni lambda in Java?
sobes.tech AI
Risposta dell'AI
L'espressione lambda in Java è una funzione anonima che consente di passare blocchi di codice come oggetti. È un modo compatto per implementare interfacce funzionali (interfacce con un solo metodo astratto).
Sintassi dell'espressione lambda:
- Elenco dei parametri (può essere vuoto).
- Operatore
->. - Corpo dell'espressione (può essere un'espressione o un blocco di istruzioni).
Esempi:
// Lambda per l'interfaccia funzionale Runnable
Runnable compito = () -> System.out.println("Ciao da lambda!");
// Lambda per l'interfaccia funzionale Comparator<Integer>
Comparator<Integer> comparatore = (a, b) -> a.compareTo(b);
// Lambda con corpo di blocco di istruzioni
Consumer<String> saluto = nome -> {
String messaggio = "Ciao, " + nome + "!";
System.out.println(messaggio);
};
Caratteristiche principali:
- Anonima: non hanno nome.
- Interfacce funzionali: vengono utilizzate per implementare interfacce funzionali.
- Concisa: consentono di scrivere codice più compatto rispetto alle classi anonime.
- Cattura variabili: possono catturare variabili locali
effettivamente finalidal contesto circostante.
L'uso delle espressioni lambda migliora la leggibilità del codice e semplifica il lavoro con API orientate alla programmazione funzionale, ad esempio, con l'API Stream.