Hvordan lambda operatør '=>' brukes i C#

Hvordan lambda operatør '=>' brukes i C#
I C# => Operatør er kjent som Lambda -operatøren, en kortfattet måte å skrive anonyme funksjoner eller delegater. Lambda-uttrykk kan brukes med både uttrykk og syntaks av uttrykk og uttalelse. Lambda-operatøren gir en kortfattet og uttrykksfull måte å definere og passere rundt små funksjoner med engangsbruk i C#. Denne artikkelen dekker hva som er => operatør og hvordan vi bruker det i et C# -program.

Introduksjon til Lambda -operatøren (=>)

De => Operatør er en kortfattet måte å skrive anonyme funksjoner eller delegater i C#. Det brukes til å definere et lambda -uttrykk, som er en inline -funksjon som kan brukes uansett hvor en delegat forventes. Funksjonsinngangsparametere skilles fra funksjonsorganer av => operatør.

Her er et eksempel på et lambda -uttrykk som legger til to tall:

Func add = (a, b) => a + b;

I dette eksemplet Func er delegaten som tar to int parametere og returnerer en int. Lambda -uttrykket (a, b) => a + b definerer funksjonen som inneholder to parametere som er en og b. Denne funksjonen vil gi summen av begge disse tallene.

Hvordan definere et lambda -uttrykk

Et lambda -uttrykk i C# kan defineres ved hjelp av følgende syntaks:

(parameterlist) => lambda kropp

De parameterliste representerer en liste over inngangsparametere som lambda -uttrykket tar. Lambda -operatøren (=>) Skiller parameterlisten fra Lambda -organet, som enten kan være et uttrykk eller en uttalelse.

Typer lambda -uttrykk

Avhengig av typen lambda -kropp, kan C# lambda -uttrykk deles inn i to kategorier:

  • Uttrykk lambda
  • Uttalelse Lambda

1. Uttrykk lambda c#

Et uttrykk lambda er en type lambda -funksjon som består av et enkelt uttrykk i kroppen. Et eksempel på et uttrykk lambda er:

(int num) => num * 6;

Ovennevnte syntaks for lambda -uttrykket tar en parameter Num av typen heltall og returnerer produktet av Num og 6.

Eksempelkode

Følgende er eksempelprogrammet som forklarer bruken av uttrykket lambda i C#:

ved hjelp av system;
Klasseprogram

statisk tomrom ()

// definere et uttrykk lambda som returnerer kvadratet på et tall.
Func Square = (num) => num * num;
// pass et heltallinngang til uttrykket lambda og skriv ut resultatet.
Konsoll.WritLine ("Square of Number:" + Square (6));

Dette C# -programmet definerer et uttrykk lambda som tar et heltall Num som inngang og returnerer torget ved å multiplisere det med seg selv. Programmet passerer deretter en inngangsverdi på 6 til lambda og skriver ut resultatet, som er kvadratet med 6.

Produksjon

Følgende er kvadratet med inngangsnummeret:

2. Uttalelse lambda c#

En uttalelse Lambda er en type lambda -funksjon som inkluderer en eller flere uttalelser vedlagt i krøllete seler innenfor kroppen. Et eksempel på en uttalelse Lambda er:

(int a, int b) =>

var sum = a + b;
retursum;
;

Denne lambda tar to heltallinnganger, legger dem sammen og returnerer summen. I Lambda -organet er to uttalelser inkludert: Den første uttalelsen erklærer en variabel som heter sum og tildeler det verdien av summen av en og b, Mens den andre uttalelsen returnerer verdien av sum variabel.

Eksempelkode

Følgende er eksempelkoden for uttalelse Lambda:

ved hjelp av system;
Klasseprogram

statisk tomrom ()

// definere en uttalelse lambda som tar to int -innganger og returnerer summen.
Func resulterende = (a, b) =>

int beregnetSum = a + b;
Retur CalculatedSum;
;
// Finn summen av 5 og 6 ved hjelp av uttalelsen Lambda.
Konsoll.WritLine ("Total sum:" + resulterende (5, 5));

Dette C# -programmet definerer en Uttalelse Lambda som tar to heltallinnganger en og b og returnerer summen ved å erklære en lokal variabel CalculatedSum og returnerer verdien. Etter det Func, int, int> Delegattype for å spesifisere at lambda tar to heltallinnganger og returnerer en heltalutgang. Programmet passerer deretter inngangsverdier på 5 og 5 til lambda og skriver ut resultatet, som er deres sum.

Produksjon

Konklusjon

=> Operatøren i C# tillater å definere anonyme funksjoner og delegater inline. Det brukes mye i LINQ -spørsmål, hendelsesbehandlere og mange andre scenarier der du trenger å definere små og enkle funksjoner. Med sin konsise syntaks og fleksibilitet gjør operatøren C# -koden mer uttrykksfull og lesbar.