Hva er Lambda-uttrykk i C#
Et Lambda-uttrykk er en kort, konsis måte å definere en metode på, uten å måtte deklarere en egen metode. Det er i hovedsak en anonym metode som kan tilordnes til en variabel eller brukes som en parameter, Lambda-uttrykk i C# er representert av '=>'-operatoren, som leses som 'goes to'-operator:
Syntaksen for et Lambda-uttrykk er:
( parameter ) => uttrykk
Der parameteren er inngangen til funksjonen, og uttrykket er utgangen til funksjonen. Følgende eksempel viser bruken av et Lambda-uttrykk for å beregne kvadratet av et tall:
int torget = ( x ) => x * x ;
I dette eksemplet tar Lambda-uttrykket en inngangsparameter x og returnerer kvadratet av x. Resultatet av Lambda-uttrykket er tilordnet variabelkvadraten, og her er hele koden for dette eksemplet:
bruker System ;
klasseprogram {
statisk tomrom Hoved ( streng [ ] args ) {
Func < int , int > torget = x => x * x ;
Konsoll. WriteLine ( torget ( 6 ) ) ;
}
}
I dette eksemplet definerer vi et Lambda-uttrykk som tar en heltallsinndataparameter x og returnerer kvadratet. Func
Hva er anonym funksjon C#
Den anonyme funksjonen er en funksjon som er uten navn og er et slags Lambda-uttrykk som er definert og kalt inline, uten å deklarere en egen metode. Anonyme funksjoner i C# er representert av nøkkelordet 'delegat', som brukes til å erklære en ny metode med en spesifikk signatur, syntaksen for en anonym funksjon er:
delegat ( parameter ) { uttrykk }
Der parameteren er inngangen til funksjonen, og uttrykket er utgangen til funksjonen. Følgende eksempel viser bruken av en anonym funksjon for å beregne summen av to tall:
delegat ( int en , int b ) { komme tilbake en + b ; }I dette eksemplet tar Anonym-funksjonen to inngangsparametere x og y og returnerer summen av f og g:
bruker System ;klasseprogram {
statisk tomrom Hoved ( streng [ ] args ) {
Func < int , int , int > sum = delegat ( int f , int g ) { komme tilbake f + g ; } ;
Konsoll. WriteLine ( sum ( 2 , 3 ) ) ;
}
}
I dette eksemplet definerer vi en anonym funksjon som tar to heltallsinndataparametere x og y og returnerer summen deres. Vi erklærer sumvariabelen som en Func
Konklusjon
Lambda-uttrykk og anonyme funksjoner er kraftige konsepter i C# som lar utviklere skrive kortfattet, effektiv og lettlest kode. Lambda-uttrykk brukes til å definere inline-metoder uten behov for å deklarere en egen metode, mens anonyme funksjoner brukes til å definere og kalle inline-funksjoner uten behov for å deklarere en separat metodedelegater (int x, int y) { return x + y; }. Begge konseptene er essensielle verktøy for enhver C#-utvikler som ønsker å skrive effektiv og vedlikeholdbar kode.