Null sammenligning av generisk argument
Når vi sammenligner generiske argumenter for null, bruker vi == operatøren som sjekker om to operander er like. Når du bruker == -operatøren for å sammenligne generiske argumenter, er det viktig å sikre at argumenttypen er en referansetype. == operatøren brukes til å sammenligne referanser, her er et eksempel på en null -sammenligning av et generisk argument i C#:
Offentlig statisk bool IsnullOvennevnte kode bruker == -operatøren for å sjekke om argumentet er null eller ikke og hvor hvor T: Klasse Begrensning sikrer at argumenttypen er en referansetype, slik at vi kan bruke == operatøren til å sammenligne referanser.
Standard sammenligning av generisk argument
Når vi sammenligner generiske argumenter for standard, bruker vi EqualityComparer.Misligholde.Er lik metode. De EqualityComparer.Misligholde Eiendom returnerer standard likestillingssammenligning for den typen som er spesifisert av det generiske argumentet. Equals -metoden for standard likestillingssammenligning brukes til å sammenligne to operander for likestilling, her er et eksempel på en standard sammenligning av et generisk argument i C#:
Offentlig statisk bool IsdefaultOvennevnte kode bruker EqualityComparer.Misligholde.Er lik() Funksjon for å sjekke om argumentet er lik standardverdien for datatypen. Standard nøkkelord brukes til å representere standardverdien til en datatype.
Eksempel: Bruke null og standard i C#
Her er et komplett kodeeksempel som viser både null og standard sammenligning av generisk argument i C#:
ved hjelp av system;Ovennevnte C# -kode definerer en konsollapplikasjon som inneholder to generiske metoder. Den første metoden “Isnull” tar inn et generisk argument “Arg” og returnerer en boolsk verdi som indikerer om “Arg” er null eller ikke, med en begrensning som “T” Må være en referansetype.
Den andre metoden, “Isdefault” tar inn et generisk argument “Arg” og returnerer en boolsk verdi som indikerer om “Arg” er standardverdien for sin type, uten begrensninger på “T”. Hovedfunksjonene tester begge metodene med henholdsvis en nullstreng og en standard heltallverdi:
Konklusjon
Når du jobber med generiske i C#, er det viktig å forstå hvordan null eller standard sammenligning fungerer med generiske argumenter. For null sammenligning bruker vi == operatøren til å sammenligne referanser, og for standard sammenligning bruker vi EqualityComparer.Misligholde.Er lik Metode for å sammenligne verdier. Du kan skrive mer effektiv og effektiv kode ved å forstå hvordan du utfører null eller standard sammenligning av generiske argumenter.