Cos'è l'espressione Lambda e la funzione anonima in C#

Cos'è l'espressione Lambda e la funzione anonima in C#
Le espressioni Lambda e le funzioni anonime sono due potenti concetti in C# che consentono agli sviluppatori di scrivere codice conciso, efficiente e di facile lettura. Queste caratteristiche consentono agli sviluppatori di scrivere funzioni in linea senza la necessità di dichiarare un metodo separato. Questo articolo discuterà quali espressioni Lambda e funzioni anonime sono in C# e fornirà esempi separati per ciascuno.

Cos'è l'espressione di lambda in c#

Un'espressione di lambda è un modo breve e conciso per definire un metodo in linea, senza la necessità di dichiarare un metodo separato. È essenzialmente un metodo anonimo che può essere assegnato a una variabile o utilizzata come parametro, le espressioni Lambda in C# sono rappresentate dall'operatore "=>", che viene letta come operatore "va a":

La sintassi per un'espressione di lambda è:

(parametro) => espressione

Dove il parametro è l'input per la funzione e l'espressione è l'output della funzione. L'esempio seguente dimostra l'uso di un'espressione Lambda per calcolare il quadrato di un numero:

int quadrat = (x) => x * x;

In questo esempio, l'espressione di lambda prende un parametro di input x e restituisce il quadrato di x. Il risultato dell'espressione di lambda è assegnato al quadrato variabile ed ecco il codice completo per questo esempio:

usando il sistema;
Programma di classe
statico void main (string [] args)
Func quadrato = x => x * x;
Console.WriteLine (Square (6));

In questo esempio, definiamo un'espressione Lambda che prende un parametro di ingresso intero X e restituisce il suo quadrato. Il tipo Func definisce che l'espressione Lambda prende un parametro di input intero e restituisce un valore intero. Assegniamo questa espressione Lambda alla variabile quadrata, quindi la chiamiamo con il valore di input di 6 e l'output sarà 36.

Qual è la funzione anonima c#

La funzione anonima è una funzione che è senza nome ed è una specie di espressione di lambda che è definita e chiamata in linea, senza dichiarare un metodo separato. Le funzioni anonime in C# sono rappresentate dalla parola chiave "delegata", che viene utilizzata per dichiarare un nuovo metodo con una firma specifica, la sintassi per una funzione anonima è:

delegate (parametro) espressione

Dove il parametro è l'input per la funzione e l'espressione è l'output della funzione. L'esempio seguente dimostra l'uso di una funzione anonima per calcolare la somma di due numeri:

delegate (int a, int b) return a + b;

In questo esempio, la funzione anonima prende due parametri di input xey e restituisce la somma di f e g:

usando il sistema;
Programma di classe
statico void main (string [] args)
Func Sum = delegate (int f, int g) return f + g; ;
Console.WriteLine (Sum (2, 3));

In questo esempio, definiamo una funzione anonima che prende due parametri di input interi xey e restituisce la loro somma. Dichiariamo la variabile di somma come un tipo di func, che specifica che la funzione prende due parametri di input interi e restituisce un valore intero. Usiamo la parola chiave delegata per definire la funzione, quindi la chiamiamo con i valori di input di 2 e 3. L'output sarà 5.

Conclusione

Le espressioni Lambda e le funzioni anonime sono concetti potenti in C# che consentono agli sviluppatori di scrivere codice conciso, efficiente e di facile lettura. Le espressioni Lambda vengono utilizzate per definire i metodi inline senza la necessità di dichiarare un metodo separato, mentre le funzioni anonime vengono utilizzate per definire e chiamare le funzioni inline senza la necessità di dichiarare un metodo separato delegato (int x, int y) return x + y; . Entrambi i concetti sono strumenti essenziali per qualsiasi sviluppatore C# che cerca di scrivere un codice efficiente e gestibile.