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) => espressioneDove 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;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) espressioneDove 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;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.