Mi az a lambda kifejezés a C#-ban
A Lambda-kifejezés egy rövid, tömör módja a metódusok soron belüli meghatározásának, külön metódus deklarálása nélkül. Ez lényegében egy anonim metódus, amely változóhoz rendelhető vagy paraméterként használható, a C#-ban a lambda-kifejezéseket az „=>” operátor képviseli, amelyet „goes to” operátorként olvasunk:
A Lambda kifejezés szintaxisa a következő:
( paraméter ) => kifejezés
Ahol a paraméter a függvény bemenete, a kifejezés pedig a függvény kimenete. A következő példa egy Lambda-kifejezés használatát mutatja be egy szám négyzetének kiszámításához:
int négyzet = ( x ) => x * x ;
Ebben a példában a Lambda kifejezés egy x bemeneti paramétert vesz fel, és az x négyzetét adja vissza. A Lambda kifejezés eredménye a változó négyzethez van rendelve, és itt van a példa teljes kódja:
rendszer segítségével ;
osztály Programja {
statikus üres Fő ( húr [ ] args ) {
Func < int , int > négyzet = x => x * x ;
Konzol. WriteLine ( négyzet ( 6 ) ) ;
}
}
Ebben a példában egy Lambda-kifejezést definiálunk, amely egy x egész bemeneti paramétert vesz fel, és annak négyzetét adja vissza. A Func
Mi az Anonymous Function C#
Az anonim függvény egy név nélküli függvény, és egyfajta Lambda-kifejezés, amelyet külön metódus deklarálása nélkül határoznak meg és hívnak inline-nek. Az anonim függvényeket a C#-ban a „delegate” kulcsszó jelöli, amely egy új metódus deklarálására szolgál egy adott aláírással, az Anonymous függvény szintaxisa a következő:
delegált ( paraméter ) { kifejezés }
Ahol a paraméter a függvény bemenete, a kifejezés pedig a függvény kimenete. A következő példa egy Anonymous függvény használatát mutatja be két szám összegének kiszámításához:
delegált ( int a , int b ) { Visszatérés a + b ; }Ebben a példában az Anonymous függvény két x és y bemeneti paramétert vesz fel, és visszaadja f és g összegét:
rendszer segítségével ;osztály Programja {
statikus üres Fő ( húr [ ] args ) {
Func < int , int , int > összeg = delegált ( int f , int g ) { Visszatérés f + g ; } ;
Konzol. WriteLine ( összeg ( 2 , 3 ) ) ;
}
}
Ebben a példában egy Anonymous függvényt definiálunk, amely két x és y egész bemeneti paramétert vesz fel, és ezek összegét adja vissza. Az összeg változót Func
Következtetés
A lambda-kifejezések és az Anonymous függvények hatékony fogalmak a C#-ban, amelyek lehetővé teszik a fejlesztők számára, hogy tömör, hatékony és könnyen olvasható kódokat írjanak. A lambda-kifejezések inline metódusok definiálására szolgálnak külön metódus deklarálása nélkül, míg az Anonymous függvények inline függvények definiálására és meghívására szolgálnak anélkül, hogy külön delegált metódusokat kellene deklarálni (int x, int y) { return x + y; }. Mindkét koncepció elengedhetetlen eszköz minden C# fejlesztő számára, aki hatékony és karbantartható kódot szeretne írni.