Što je Lambda izraz i anonimna funkcija u C#

Sto Je Lambda Izraz I Anonimna Funkcija U C



Lambda izrazi i anonimne funkcije dva su moćna koncepta u C# koji programerima omogućuju pisanje sažetog, učinkovitog i lako čitljivog koda. Ove značajke omogućuju programerima pisanje ugrađenih funkcija bez potrebe za deklariranjem zasebne metode. U ovom će se članku raspravljati o tome što su lambda izrazi i anonimne funkcije u C# i pružiti zasebne primjere za svaku od njih.

Što je Lambda izraz u C#

Lambda izraz je kratak, koncizan način za definiranje metode u liniji, bez potrebe za deklariranjem zasebne metode. To je u biti anonimna metoda koja se može dodijeliti varijabli ili koristiti kao parametar, Lambda izrazi u C# predstavljeni su operatorom “=>”, koji se čita kao operator “ide na”:

Sintaksa za Lambda izraz je:







( parametar ) => izraz

Gdje je parametar ulaz u funkciju, a izraz je izlaz funkcije. Sljedeći primjer pokazuje upotrebu lambda izraza za izračunavanje kvadrata broja:



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

U ovom primjeru, Lambda izraz uzima ulazni parametar x i vraća kvadrat x. Rezultat Lambda izraza dodijeljen je kvadratu varijable i ovdje je cijeli kod za ovaj primjer:



pomoću sustava ;

razreda Program {

statički poništiti Glavni ( niz [ ] args ) {

Funk < int , int > kvadrat = x => x * x ;

Konzola. WriteLine ( kvadrat ( 6 ) ) ;

}

}

U ovom primjeru definiramo Lambda izraz koji uzima cjelobrojni ulazni parametar x i vraća njegov kvadrat. Tip Func definira da Lambda izraz uzima cjelobrojni ulazni parametar i vraća cjelobrojnu vrijednost. Dodjeljujemo ovaj Lambda izraz kvadratnoj varijabli, a zatim ga pozivamo s ulaznom vrijednošću 6, a izlaz će biti 36.





Što je anonimna funkcija C#

Anonimna funkcija je funkcija koja je bez imena i vrsta je Lambda izraza koji je definiran i pozvan inline, bez deklariranja zasebne metode. Anonimne funkcije u C# predstavljene su ključnom riječi 'delegate', koja se koristi za deklariranje nove metode s određenim potpisom, sintaksa za anonimnu funkciju je:



delegat ( parametar ) { izraz }

Gdje je parametar ulaz u funkciju, a izraz je izlaz funkcije. Sljedeći primjer pokazuje upotrebu funkcije Anonymous za izračunavanje zbroja dvaju brojeva:

delegat ( int a , int b ) { povratak a + b ; }

U ovom primjeru Anonymous funkcija uzima dva ulazna parametra x i y i vraća zbroj f i g:

pomoću sustava ;

razreda Program {

statički poništiti Glavni ( niz [ ] args ) {

Funk < int , int , int > iznos = delegat ( int f , int g ) { povratak f + g ; } ;

Konzola. WriteLine ( iznos ( 2 , 3 ) ) ;

}

}

U ovom primjeru definiramo anonimnu funkciju koja uzima dva cjelobrojna ulazna parametra x i y i vraća njihov zbroj. Varijablu zbroja deklariramo kao tip Func , koji specificira da funkcija uzima dva cjelobrojna ulazna parametra i vraća cjelobrojnu vrijednost. Koristimo ključnu riječ delegata da definiramo funkciju, a zatim je pozivamo s ulaznim vrijednostima 2 i 3. Izlaz će biti 5.

Zaključak

Lambda izrazi i anonimne funkcije moćni su koncepti u C# koji programerima omogućuju pisanje sažetog, učinkovitog i lako čitljivog koda. Lambda izrazi se koriste za definiranje ugrađenih metoda bez potrebe za deklariranjem zasebne metode, dok se anonimne funkcije koriste za definiranje i pozivanje ugrađenih funkcija bez potrebe za deklariranjem odvojenog delegata metode (int x, int y) { return x + y; }. Oba koncepta ključni su alati za svakog C# programera koji želi pisati učinkovit kod koji se može održavati.