Hvad er Lambda-udtryk i C#
Et Lambda-udtryk er en kort, kortfattet måde at definere en metode inline på, uden at det er nødvendigt at angive en separat metode. Det er i det væsentlige en anonym metode, der kan tildeles til en variabel eller bruges som en parameter, Lambda-udtryk i C# er repræsenteret af '=>'-operatoren, som læses som 'goes to'-operator:
Syntaksen for et Lambda-udtryk er:
( parameter ) => udtryk
Hvor parameteren er input til funktionen, og udtrykket er output af funktionen. Følgende eksempel viser brugen af et Lambda-udtryk til at beregne kvadratet af et tal:
int firkant = ( x ) => x * x ;
I dette eksempel tager Lambda-udtrykket en inputparameter x og returnerer kvadratet af x. Resultatet af Lambda-udtrykket tildeles til den variable kvadrat, og her er den fulde kode for dette eksempel:
ved hjælp af System ;
klasses program {
statisk ugyldig Hoved ( snor [ ] args ) {
Func < int , int > firkant = x => x * x ;
Konsol. WriteLine ( firkant ( 6 ) ) ;
}
}
I dette eksempel definerer vi et Lambda-udtryk, der tager en heltal inputparameter x og returnerer dens kvadrat. Typen Func
Hvad er anonym funktion C#
Den anonyme funktion er en funktion, der er uden navn og er en slags Lambda-udtryk, som er defineret og kaldet inline, uden at deklarere en separat metode. Anonyme funktioner i C# er repræsenteret af nøgleordet 'delegeret', som bruges til at erklære en ny metode med en specifik signatur, syntaksen for en anonym funktion er:
delegeret ( parameter ) { udtryk }
Hvor parameteren er input til funktionen, og udtrykket er output af funktionen. Følgende eksempel viser brugen af en anonym funktion til at beregne summen af to tal:
delegeret ( int -en , int b ) { Vend tilbage -en + b ; }I dette eksempel tager funktionen Anonym to inputparametre x og y og returnerer summen af f og g:
ved hjælp af System ;klasses program {
statisk ugyldig Hoved ( snor [ ] args ) {
Func < int , int , int > sum = delegeret ( int f , int g ) { Vend tilbage f + g ; } ;
Konsol. WriteLine ( sum ( 2 , 3 ) ) ;
}
}
I dette eksempel definerer vi en anonym funktion, der tager to heltals inputparametre x og y og returnerer deres sum. Vi erklærer sumvariablen som en Func
Konklusion
Lambda-udtryk og anonyme funktioner er kraftfulde begreber i C#, der giver udviklere mulighed for at skrive kortfattet, effektiv og letlæselig kode. Lambda-udtryk bruges til at definere inline-metoder uden behov for at deklarere en separat metode, mens anonyme funktioner bruges til at definere og kalde inline-funktioner uden behov for at erklære en separat metodedelegater (int x, int y) { return x + y; }. Begge koncepter er essentielle værktøjer for enhver C#-udvikler, der ønsker at skrive effektiv og vedligeholdelig kode.