Co je lambda výraz a anonymní funkce v C#

Co Je Lambda Vyraz A Anonymni Funkce V C



Lambda výrazy a anonymní funkce jsou dva výkonné koncepty v C#, které umožňují vývojářům psát stručný, efektivní a snadno čitelný kód. Tyto funkce umožňují vývojářům psát inline funkce bez nutnosti deklarovat samostatnou metodu. Tento článek pojednává o tom, co jsou výrazy lambda a anonymní funkce v C#, a pro každý z nich poskytuje samostatné příklady.

Co je lambda výraz v C#

Lambda výraz je krátký a výstižný způsob, jak definovat metodu inline, bez nutnosti deklarovat samostatnou metodu. Je to v podstatě anonymní metoda, kterou lze přiřadit proměnné nebo použít jako parametr, výrazy lambda v C# jsou reprezentovány operátorem „=>“, který se čte jako operátor „goes to“:

Syntaxe výrazu Lambda je:







( parametr ) => výraz

Kde parametr je vstupem funkce a výraz je výstupem funkce. Následující příklad ukazuje použití výrazu Lambda k výpočtu druhé mocniny čísla:



int náměstí = ( X ) => X * X ;

V tomto příkladu výraz Lambda přebírá vstupní parametr x a vrací druhou mocninu x. Výsledek výrazu Lambda je přiřazen k proměnné čtverec a zde je úplný kód pro tento příklad:



pomocí System ;

třídní program {

statický prázdnota Hlavní ( tětiva [ ] argumenty ) {

Func < int , int > náměstí = X => X * X ;

Řídicí panel. WriteLine ( náměstí ( 6 ) ) ;

}

}

V tomto příkladu definujeme výraz Lambda, který přebírá celočíselný vstupní parametr x a vrací jeho druhou mocninu. Typ Func definuje, že výraz Lambda přebírá celočíselný vstupní parametr a vrací celočíselnou hodnotu. Tento výraz lambda přiřadíme čtvercové proměnné a poté jej zavoláme se vstupní hodnotou 6 a výstup bude 36.





Co je anonymní funkce C#

Anonymní funkce je funkce, která nemá jméno a je jakýmsi výrazem Lambda, který je definován a volán inline, bez deklarování samostatné metody. Anonymní funkce v C# jsou reprezentovány klíčovým slovem „delegate“, které se používá k deklaraci nové metody se specifickým podpisem, syntaxe pro anonymní funkci je:



delegát ( parametr ) { výraz }

Kde parametr je vstupem funkce a výraz je výstupem funkce. Následující příklad ukazuje použití anonymní funkce k výpočtu součtu dvou čísel:

delegát ( int A , int b ) { vrátit se A + b ; }

V tomto příkladu má funkce Anonymous dva vstupní parametry x a y a vrátí součet f a g:

pomocí System ;

třídní program {

statický prázdnota Hlavní ( tětiva [ ] argumenty ) {

Func < int , int , int > součet = delegát ( int F , int G ) { vrátit se F + G ; } ;

Řídicí panel. WriteLine ( součet ( 2 , 3 ) ) ;

}

}

V tomto příkladu definujeme anonymní funkci, která přebírá dva celočíselné vstupní parametry x a y a vrací jejich součet. Proměnnou součtu deklarujeme jako typ Func , který určuje, že funkce přebírá dva celočíselné vstupní parametry a vrací celočíselnou hodnotu. K definici funkce použijeme klíčové slovo delegát a poté ji zavoláme se vstupními hodnotami 2 a 3. Výstupem bude 5.

Závěr

Lambda výrazy a anonymní funkce jsou výkonné koncepty v C#, které umožňují vývojářům psát stručný, efektivní a snadno čitelný kód. Lambda výrazy se používají k definování inline metod bez nutnosti deklarovat samostatnou metodu, zatímco Anonymní funkce slouží k definování a volání inline funkcí bez nutnosti deklarace samostatné metody delegát (int x, int y) { return x + y; }. Oba koncepty jsou základními nástroji pro každého vývojáře C#, který chce psát efektivní a udržovatelný kód.