Mi a Lambda kifejezés és az anonim függvény a C#-ban

Mi A Lambda Kifejezes Es Az Anonim Fuggveny A C Ban



A lambda-kifejezések és az anonim függvények a C# két hatékony koncepciója, amelyek lehetővé teszik a fejlesztők számára, hogy tömör, hatékony és könnyen olvasható kódokat írjanak. Ezek a szolgáltatások lehetővé teszik a fejlesztők számára, hogy soron belüli függvényeket írjanak anélkül, hogy külön módszert kellene deklarálniuk. Ez a cikk megvitatja, hogy melyek a lambda-kifejezések és az anonim függvények a C#-ban, és mindegyikre külön példákat ad.

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 ( 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 típus azt határozza meg, hogy a Lambda-kifejezés egy egész bemeneti paramétert vesz fel, és egy egész értéket ad vissza. Ezt a Lambda-kifejezést hozzárendeljük a négyzetes változóhoz, majd 6-os bemeneti értékkel hívjuk, és a kimenet 36 lesz.





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 ( 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 típusként deklaráljuk, ami azt adja meg, hogy a függvény két egész bemeneti paramétert vesz fel, és egy egész értéket ad vissza. A függvény definiálásához a delegate kulcsszót használjuk, majd 2 és 3 bemeneti értékekkel hívjuk meg. A kimenet 5 lesz.

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.