Enum v C # - Delo in top 3 metode Enum v C # s prednostmi

Kazalo:

Anonim

Uvod v Enum v C #

Enum je v C # rezervirana ključna beseda, ki predstavlja naštevanje. Poštevanje je uporabniško določeno vrsto v C #, ki vsebuje nabor imenovanih konstant. Vsaka konstanta v nizu ima vrednost (privzeto celo število). Do konstant lahko dostopate tako z imeni kot z vrednostmi. Tako imen ni mogoče podvajati v enumu.

Sintaksa enuma je neposredna. Začne se s ključno besedo enum, sledi ime spremenljivke, sledi sklop poimenovanih konstanc, ovitih v kodraste oklepaje. Seveda se konča s podpičjem.

Sintaksa:

enum ();

Primer:

enum Day ( Sun, Mon, Tue, Wed, Thu, Fri, Sat );
enum Month ( Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec );

Delo Enuma v C #

Poskusimo razumeti, kako deluje enum v C #. Enumi imajo v C # osnovno vrsto. To pomeni, da bo vsaka stalnica v enumu imela vrednost osnovne vrste, ki ji je bila dodeljena. Privzeta osnovna vrsta enuma v C # je celo število.

V zgornjem dnevu enum imamo prijavljenih sedem konstant. Ima privzeto osnovno vrsto celih števil. Tako bo vsaki stalnici dodeljena cela vrednost. Privzeto se vrednost začne pri 0. Tako bo Sun dodeljen 0, Mon mu bo dodelil 1, Tue mu bo dodelil 2 in tako naprej.

Vzemimo še en primer. Sunu bi dodeljeli vrednost 1. To bi prisililo prevajalnik, da začne z dodelitvijo 1 namesto z 0. Potem bi vrednost 8 dodelili Thu. Prevajalnik bi nato nadaljeval z nalogo od 8 naprej.

Primer # 1

using System;
public class Program
(
enum Day
(
Sun = 1,
Mon,
Tue,
Wed,
Thu = 8,
Fri,
Sat
);
public static void Main()
(
for (int i = 0; i < 10; i++)
(
Console.WriteLine((Day)i);
)
)
)

Izhod:

Primer v resničnem svetu so lahko različne faze na poti stranke. Seveda lahko vse konstante deklariramo ločeno in jim dodelimo ustrezne celoštevilčne vrednosti, vendar z uporabo enuma odpravimo težave s pomnjenjem celoštevilčnih vrednosti za vsako stopnjo in tudi kodo precej lažje razumemo.

Primer # 2

using System;
public class Program
(
enum ClientJourney
(
Introduced = 1,
UnderReview = 2,
Reviewed = 3,
Documentation = 4,
Onboarded = 5,
Declined = 6,
Deboarded = 7
);
public static void Main()
(
Console.WriteLine("The various stages in the journey of a client are:\n");
foreach (string str in Enum.GetNames(typeof(ClientJourney)))
(
Console.WriteLine(str);
)
)
)

Izhod:

Enumove metode v C #

Sledi nekaj načinov Enuma v C #:

1. GetName (Vrsta, Int32)

Metoda GetName vrne imenovano konstanto, preslikano na določeno vrednost v enumu. Če pri tej vrednosti ni imenovane stalnice, vrne prazen niz.

Ta metoda pričakuje dva parametra - eden je vrsta tj enum sam, drugi pa podana vrednost.

Koda:

V istem primeru dneva zgoraj bi po metodi GetName natisnili imenovane konstante.

using System;
public class Program
(
enum Day
(
Sun = 1,
Mon,
Tue,
Wed,
Thu = 8,
Fri,
Sat
)
;
public static void Main()
(
for (int i = 0; i < 10; i++)
(
Console.WriteLine(Enum.GetName(typeof(Day), i));
)
)
)

Izhod:

2. GetNames (vrsta)

V zgornjem primeru upoštevajte, kako smo morali uporabiti for zanko, da smo dobili vse imenovane konstante enuma. Metoda GetName je bolj uporabna, kadar potrebujemo eno ali morda omejeno število imenovanih konstant.

Da dobimo vse poimenovane konstante, imamo še eno metodo GetNames (). Kot vhodni parameter vzame enum.

Koda:

V istem primeru dneva zgoraj bi po metodi GetNames natisnili imenovane konstante.

using System;
public class Program
(
enum Day
(
Sun = 1,
Mon,
Tue,
Wed,
Thu = 8,
Fri,
Sat
)
;
public static void Main()
(
foreach(string namedConstant in Enum.GetNames(typeof(Day)))(
Console.WriteLine(namedConstant);
)
)
)

Izhod:

3. GetValues ​​(vrsta)

Metoda GetValues ​​() se uporablja za pridobivanje osnovnih preslikanih vrednosti za vsako od enumovih imenovanih konstant.

Koda:

V istem primeru dneva zgoraj bi po metodi GetNames natisnili imenovane konstante.

using System;
public class Program
(
enum Day
(
Sun = 1,
Mon,
Tue,
Wed,
Thu = 8,
Fri,
Sat
)
;
public static void Main()
(
foreach (int i in Enum.GetValues(typeof(Day)))
(
Console.WriteLine(i);
)
)
)

Izhod:

Pravila za Enum v C #

  • Enum je vrsta, ne pa spremenljivka / stalnica / metoda.
  • Enum imenovanih konstant ni mogoče podvajati. Biti morajo edinstveni
  • Osnovna vrsta enuma ne more biti značilna.
  • Privzeta osnovna vrsta enuma je celo število.
  • Privzeto se vrednosti, dodeljene enumom imenovanim konstantam, začnejo od 0, za vsako zaporedno imenovano konstanto pa zvišajo za 1.

Prednosti Enuma v C #

Enumi so zelo ugodna praksa kodiranja. Uporabljajo se za določitev nabora konstant za aplikacijo ali program. Tako nabor ostane stalen in se izogiba kaosu v programu, še posebej, če gre za ogromno aplikacijo, v katero je vključenih več razvijalcev.

Obstaja veliko scenarijev, v katerih je mogoče uporabiti enume. Dnevi v tednu, meseci v letu, koeficienti pretvorbe temperatur, faktorji pretvorbe za časovne pasove ali kateri koli podatek iz glavne tabele za aplikacijo. Tako je koda bolj berljiva in lažja za razumevanje.

Zaključek

Tako smo videli uporabo enuma v C #. Izvedeli smo, kako deluje in kakšna je lahko njegova praktična uporaba. Razumeli smo pravila, ki jih moramo upoštevati pri uporabi enumov. Obstajajo tudi metode, ki nam pomagajo do dostopa do foruma in ga formatiramo. IT priporoča, da v kodi uporabijo enume v čim večjem številu. To vam bo pomagalo upoštevati kodiranje dobrih praks in se tudi naučiti enumov.

Priporočeni članki

To je vodnik za Enum v C #. Tukaj razpravljamo o delu, metodah, pravilih in prednostih Enuma v C # s primeri in implementacijo kode. Če želite izvedeti več, si oglejte tudi naslednje članke -

  1. Palindrom v C # s primeri
  2. Kako dostopati do imenskih prostorov v C #?
  3. Najboljše 3 vrste vzorcev v C #
  4. Rekurzivna funkcija v C #
  5. Nadaljujte z izjavami v C # s primeri
  6. Dejavniki v R | Kako ustvariti | Prednosti