Š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
Š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
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.