Espressioni lambda in java | Spiegato

Espressioni lambda in java | Spiegato
Le espressioni Lambda sono un'aggiunta entusiasmante a Java SE 8. Le espressioni Lambda ci aiutano a costruire applicazioni Java in un paradigma diverso rispetto al tradizionale OOP. Le espressioni Lambda sono un approccio fondamentale alla programmazione funzionale Java e quindi consentono di creare una funzione senza appartenere a una classe specifica. Il concetto di espressioni Lambda ruota attorno all'interfaccia funzionale.

Questo articolo presenta una comprensione dettagliata degli aspetti sotto l'elenco delle espressioni di Java Lambda:

  • Quali sono le espressioni Lambda
  • Perché espressioni lambda
  • Cos'è un'interfaccia funzionale in Java
  • Parametri di espressione di lambda
  • Come implementare le espressioni Lambda in Java

Quindi iniziamo!

Quali sono le espressioni Lambda

In Java, le espressioni Lambda non sono altro che un blocco conciso di codice che può essere usato per scrivere metodi anonimi. Le espressioni Lambda sono molto simili ai metodi Java, ma queste espressioni non hanno bisogno di un nome e possono essere implementate all'interno del corpo della funzione.

Perché espressioni lambda

Esistono numerosi vantaggi/caratteristiche che mostrano il significato delle espressioni Lambda in Java:

  • Abilita la programmazione funzionale.
  • Le espressioni lambda rendono il codice facilmente conciso e facilmente leggibile.
  • Le espressioni Lambda ci aiutano a scrivere API e biblioteche facili da usare.
  • Le espressioni Lambda supportano l'elaborazione parallela.

Interfacce funzionali

In Java, un'interfaccia può avere almeno un metodo astratto; Tuttavia, se parliamo di un'interfaccia funzionale, ha esattamente un metodo astratto. Ad esempio, l'interfaccia java runnable è un'interfaccia funzionale che comprende solo un metodo astratto i.e. correre(). Le espressioni Lambda implementano solo metodi astratti e quindi le espressioni Lambda possono implementare le interfacce funzionali.

Esempio

Diamo un'occhiata allo snippet di codice seguente in cui è possibile identificare ciò che è un'interfaccia funzionale in Java:

interfaccia printdata
void show (String Data);

Classe pubblica LambdaExpressionExample implementa printData
public void show (String Data)
Sistema.fuori.println (dati);

public static void main (string [] args)
LambDAExpressionExample OBJ = new LambDAExpressionExample ();
obj.mostra ("Esempio di espressione di lambda");

L'output del codice sopra è mostrato nel seguente frammento:

Ecco come funziona un'interfaccia funzionale in Java.

Parametri di espressione di lambda

In Java, l'operatore freccia -> è stato introdotto tramite espressioni Lambda. L'operatore della freccia è responsabile della divisione dell'espressione di lambda in due parti i.e. parametri/argomenti, bode.

Un'espressione Lambda non può avere parametri, singoli parametri o più parametri La sintassi di base per entrambi gli approcci è mostrata di seguito:

Sintassi dell'espressione di lambda con parametro zero

() ->
//codice

Sintassi dell'espressione di lambda con singolo parametro

Parametro ->
//codice

Sintassi dell'espressione di lambda con più parametri

(Parameter1, Parameter2, Parameter3) ->
//codice

Come implementare le espressioni Lambda in Java

Lo snippet di codice di seguito ti permetterà di capire come implementare le espressioni Lambda in Java:

Esempio

In questo esempio passeremo l'espressione di lambda come parametri alla funzione foreach () di Linkedlist per stampare il suo elemento:

Classe pubblica LambdaExpressionSexample
public static void main (string [] args)
Soggetti LinkedList = new LinkedList ();
soggetti.Aggiungi ("Informatica");
soggetti.Aggiungi ("matematica");
soggetti.Aggiungi ("Biologia");
soggetti.Aggiungi ("fisica");
soggetti.Aggiungi ("inglese");
soggetti.foreach ((sub) ->
Sistema.fuori.println (sub);
);

Lo snippet di codice completo e il rispettivo output sono mostrati nello snippet di seguito:

L'output autentica il funzionamento dell'espressione di lambda mentre riesce a stampare ogni elemento dell'elenco.

Esempio

Il frammento di code di seguito elabora il funzionamento dell'espressione di Java Lambda con più parametri/argomenti

Interfaccia FindProduct
prodotti int (int x, int y);

Classe pubblica LambdaExpressionExample
public static void main (string [] args)
FindProduct num = (x, y) -> (x * y);
Sistema.fuori.println (num.prodotto (12, 7));

Lo snippet sopra calcola il prodotto di due numeri usando l'espressione di Java lambda:

Il programma di cui sopra calcola con successo il prodotto di due numeri che autentica il funzionamento delle espressioni Lambda in Java.

Conclusione

L'espressione di lambda in java è un metodo anonimo che non ha né un nome né appartiene a nessuna classe e fornisce un modo chiaro e conciso di rappresentare un'interfaccia del metodo attraverso un'espressione. Le espressioni Lambda forniscono l'implementazione di un'interfaccia funzionale e semplificano lo sviluppo del software. Questo articolo fornisce una panoramica dettagliata delle espressioni di Java Lambda in cui abbiamo imparato cos'è un'espressione Lambda, perché è importante e come implementare le espressioni Lambda in Java.