Co to jest wyrażenie lambda w C#
Wyrażenie lambda jest krótkim, zwięzłym sposobem zdefiniowania metody wbudowanej, bez potrzeby zadeklarowania osobnej metody. Jest to zasadniczo anonimowa metoda, którą można przypisać do zmiennej lub użyć jako parametr, wyrażenia Lambda w C# są reprezentowane przez operatora „=>”, który jest odczytany jako operator „idzie do”:
Składnia wyrażenia Lambda to:
(parametr) => wyrażenieGdzie parametr jest wejściem do funkcji, a wyrażenie jest wyjściem funkcji. Poniższy przykład pokazuje zastosowanie wyrażenia Lambda do obliczenia kwadratu liczby:
int Square = (x) => x * x;W tym przykładzie wyrażenie Lambda przyjmuje parametr wejściowy X i zwraca kwadrat x. Wynik wyrażenia Lambda jest przypisany do zmiennego kwadratu i oto pełny kod dla tego przykładu:
za pomocą systemu;W tym przykładzie definiujemy wyrażenie lambda, które przyjmuje parametr wejściowy liczb całkowitych x i zwraca kwadratowy. Typ FUNC definiuje, że wyrażenie Lambda przyjmuje parametr wejściowy całkowitej i zwraca wartość całkowitą. Przypisujemy to wyrażenie lambda do zmiennej kwadratowej, a następnie nazywamy je wartością wejściową 6, a wyjście wyniesie 36.
Co to jest funkcja anonimowa c#
Funkcja anonimowa jest funkcją bez nazwy i jest rodzajem wyrażenia Lambda, które jest zdefiniowane i wywoływane w linii, bez deklarowania osobnej metody. Anonimowe funkcje w C# są reprezentowane przez słowo kluczowe „Delegat”, które służy do deklarowania nowej metody o określonym podpisie, składnia funkcji anonimowej to:
delegate (parametr) wyrażenieGdzie parametr jest wejściem do funkcji, a wyrażenie jest wyjściem funkcji. Poniższy przykład pokazuje użycie funkcji anonimowej do obliczenia sumę dwóch liczb:
delegate (int a, int b) return a + b;W tym przykładzie funkcja anonimowa przyjmuje dwa parametry wejściowe x i y i zwraca sumę f i g:
za pomocą systemu;W tym przykładzie definiujemy funkcję anonimową, która przyjmuje dwa parametry wejściowe liczb całkowitych x i y i zwraca sumę. Ogłaszamy zmienną SUM jako typu FUNC, która określa, że funkcja przyjmuje dwa parametry wejściowe całkowitej i zwraca wartość liczb całkowitą. Używamy słowa kluczowego delegatu do zdefiniowania funkcji, a następnie wywołujemy ją z wartościami wejściowymi 2 i 3. Wyjście będzie wynosić 5.
Wniosek
Wyrażenia Lambda i funkcje anonimowe to potężne pojęcia w C#, które pozwalają programistom pisać zwięzły, wydajny i łatwy do czytania kod. Wyrażenia Lambda są używane do definiowania metod inline bez potrzeby zadeklarowania osobnej metody, podczas gdy funkcje anonimowe są używane do definiowania i wywoływania funkcji inline bez potrzeby zadeklarowania osobnego delegata metody (int x, int y) return x + y; . Obie pojęcia są niezbędnymi narzędziami dla każdego programisty C#, który chce pisać wydajny i możliwy do utrzymania kod.