Enum a C # - -ben Munka és a 3 legfontosabb Enum módszer a C # -ben, előnyei

Tartalomjegyzék:

Anonim

Bevezetés az Enumba a C # -ben

Az Enum egy fenntartott kulcsszó a C # -ben, amely egy felsorolást jelent. Az Enumeration egy felhasználó által definiált típus a C # -ben, amely megnevezett konstansok halmazát tartalmazza. A halmaz minden konstansának van értéke (alapértelmezett egész számok). Az állandók névvel és értékkel egyaránt elérhetők. Így a neveket nem lehet lemásolni egy enumban.

Az enum szintaxisa egyértelmű. Ez az enum kulcsszóval kezdődik, amelyet egy változó név követ, majd a göndörbe zárt zárójeleket tartalmazó elnevezett állandók halmaza. Természetesen ez egy pontosvesszővel ér véget.

Szintaxis:

enum ();

Példa:

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

Az Enum működése a C # -ben

Próbáljuk megérteni, hogy az enum hogyan működik a C # -ben. Az enumok mögöttes típusa C #. Ez azt jelenti, hogy az enum minden állandója megkapja a mögöttes típus értékét. Az enum alapértelmezett alaptípusa C # -ben egy egész szám.

A fenti enum napon hét állandókat deklaráltunk. Alapértelmezett mögöttes egész számmal rendelkezik. Így minden konstansnak egy egész szám lesz hozzárendelve. Alapértelmezés szerint az érték 0-nál kezdődik. Így a Sunnak 0 lesz hozzárendelve, Monnek 1 lesz hozzárendelve, Téhez 2 lesz hozzárendelve és így tovább.

Vegyünk egy másik példát. Az 1. értéket a Sunnak adnánk. Ez arra kényszerítené a fordítót, hogy 0-tól 0-tól kezdje el a hozzárendelést. Akkor 8-at adjuk Thu-hoz. A fordító ezután 8-tól folytatja a hozzárendelést.

1. példa

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);
)
)
)

Kimenet:

Valós példa lehet az ügyfél utazásának különféle szakaszai. Természetesen az összes állandót külön lehet deklarálni, és hozzárendelni a megfelelő egész értékeket, de az enum használata kiküszöböli az egyes szakaszok egész számértékeinek emlékezésének nehézségeit, és a kód sokkal könnyebb megértését is megkönnyíti.

2. példa

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);
)
)
)

Kimenet:

Enum módszerek a C # -ben

Az alábbiakban bemutatjuk az Enum néhány módszerét a C # -ben:

1. GetName (Type, Int32)

A GetName módszer a megnevezett konstansot adja vissza az enumban megadott értékre. Ha ezen az értéken nincs megnevezett állandó, akkor egy üres karakterláncot ad vissza.

Ez a módszer két paramétert vár el - az egyik a típus, azaz maga az enum, a másik pedig a megadott érték.

Kód:

A fenti napok ugyanazon példájában kinyomtatnánk a megnevezett konstansokat a GetName módszer segítségével.

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));
)
)
)

Kimenet:

2. GetNames (típus)

Figyelje meg a fenti példában, hogy hogyan kellett felhasználnunk a for hurkot az enum összes megnevezett állandójának beolvasásához. A GetName módszer akkor hasznosabb, ha egyetlen vagy esetleg korlátozott számú elnevezett állandóra van szükségünk.

Az összes megnevezett állandóság beszerzéséhez van egy másik GetNames () módszer is. Az enum értéket veszi bemeneti paraméterként.

Kód:

A fenti napok ugyanazon példájában kinyomtatnánk a megnevezett konstansokat a GetNames módszerrel.

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);
)
)
)

Kimenet:

3. GetValues ​​(típus)

A GetValues ​​() metódust arra használják, hogy az alapul szolgáló leképezett értékeket az enum mindegyik állandójához megkapják.

Kód:

A fenti napok ugyanazon példájában kinyomtatnánk a megnevezett konstansokat a GetNames módszerrel.

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);
)
)
)

Kimenet:

Az Enum szabályai a C # -ben

  • Az Enum egy típus, nem változó / állandó / módszer.
  • Az Enum nevű állandókat nem lehet lemásolni. Egyedinek kell lenniük
  • Az alapul szolgáló enum típus nem lehet char.
  • Az enum alapértelmezett mögöttes típusa egész szám.
  • Alapértelmezés szerint az enum nevű állandókhoz rendelt értékek 0-tól kezdődnek, minden egyes egymást követő elnevezett állandóhoz 1-rel növekednek.

Az Enum előnyei a C # -ben

Az enumok nagyon előnyös kódolási gyakorlat. Ezeket az alkalmazás vagy program állandóságainak meghatározására használják. Így a készlet állandó marad, és elkerülhető a káosz a programban, különösen akkor, ha egy hatalmas alkalmazás, amely több fejlesztőt von magába.

Számos olyan eset létezik, amelyben az enumok felhasználhatók. A hét napjai, az év hónapjai, a hőmérsékletek átváltási arányai, az időzónák átváltási tényezői vagy az alkalmazás bármilyen főtáblája. Ez a kód olvashatóbbá és könnyebben érthetővé teszi.

Következtetés

Így láttuk az enum alkalmazását a C # -ben. Megtanultuk, hogyan működik, és mi lehet annak gyakorlati alkalmazása. Megértettük azokat a szabályokat, amelyeket be kell tartaniuk az enumok használatakor. Vannak olyan módszerek is, amelyek segítenek elérni és formázni az enumot. Az IT számára javasolt, hogy a kódban minél több enumot használjon. Ez segít megfigyelni a bevált gyakorlatok kódolását, és megismerheti az enumokat is.

Ajánlott cikkek

Ez egy útmutató az Enum számára a C # -ben. Itt tárgyaljuk az Enum működését, módszereit, szabályait és előnyeit a C # -ben, példákkal és a kód megvalósításával. A következő cikkeket is megnézheti további információkért -

  1. Palindrom C # -ben példákkal
  2. Hogyan férhet hozzá a névterekhez a C # -ben?
  3. A C 3 legjobb mintatípusai
  4. Rekurzív függvény C # -ben
  5. Folytassa a nyilatkozatot a C # példában
  6. Az R tényezők | Hogyan lehet létrehozni Előnyök