Inleiding tot Enum in C #

Enum is een gereserveerd trefwoord in C #, dat een opsomming vertegenwoordigt. Een opsomming is een door de gebruiker gedefinieerd type in C # dat een set benoemde constanten bevat. Elke constante in de set heeft een waarde (standaard gehele getallen). De constanten zijn toegankelijk via zowel namen als waarden. De namen kunnen dus niet in een opsomming worden gedupliceerd.

De syntaxis van een opsomming is eenvoudig. Het begint met het trefwoord enum, gevolgd door een variabelenaam, gevolgd door een set benoemde constanten gewikkeld tussen accolades. Natuurlijk eindigt het met een puntkomma.

Syntaxis:

enum ();

Voorbeeld:

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

Werken van Enum in C #

Laten we proberen te begrijpen hoe enum werkt in C #. Enums hebben een onderliggend type in C #. Dit betekent dat aan elke constante in het getal een waarde van het onderliggende type wordt toegewezen. Het standaard onderliggende type enum in C # is een geheel getal.

In de bovenstaande opsommingsdag hebben we zeven constanten verklaard. Het heeft een standaard onderliggend type geheel getal. Aan elke constante zal dus een geheel getal worden toegewezen. Standaard begint de waarde bij 0. Dus, Sun krijgt er 0 aan toegewezen, Mon krijgt er 1 aan toegewezen, di heeft er 2 aan toegewezen enzovoort.

Laten we nog een voorbeeld nemen. We zouden de waarde 1 toekennen aan Sun. Dit zou de compiler dwingen om de toewijzing te starten vanaf 1 in plaats van 0. Dan zouden we de waarde 8 toewijzen aan do. De compiler zou dan vanaf 8 doorgaan met de toewijzing.

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

Output:

Een realistisch voorbeeld kan de verschillende fase in de reis van een klant zijn. Natuurlijk kunnen alle constanten afzonderlijk worden gedeclareerd en eraan worden toegewezen, maar met enum hoeft u de hele getallen niet meer te onthouden voor elke fase en wordt de code ook een stuk eenvoudiger te begrijpen.

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

Output:

Enum-methoden in C #

Hier volgen enkele methoden van Enum in C #:

1. GetName (Type, Int32)

De methode GetName retourneert de benoemde constante toegewezen aan de opgegeven waarde in het enum. Als er geen genoemde constante is bij die waarde, wordt een lege tekenreeks geretourneerd.

Deze methode verwacht twee parameters: de ene is het type, dwz de opsomming zelf, en de andere is de opgegeven waarde.

Code:

In hetzelfde voorbeeld van Dagen hierboven, zouden we de genoemde constanten afdrukken via de methode GetName.

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

Output:

2. GetNames (Type)

Merk in het bovenstaande voorbeeld op hoe we de for-lus moesten gebruiken om alle genoemde constanten van het opsomming te krijgen. De methode GetName is nuttiger wanneer we een enkelvoudig of misschien een beperkt aantal benoemde constanten nodig hebben.

Om alle genoemde constanten te krijgen, hebben we een andere methode GetNames (). Het neemt de opsomming als invoerparameter.

Code:

In hetzelfde voorbeeld van Dagen hierboven, zouden we de genoemde constanten afdrukken via de GetNames-methode.

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

Output:

3. GetValues ​​(Type)

De methode GetValues ​​() wordt gebruikt om de onderliggende toegewezen waarden te verkrijgen voor elk van de genoemde constanten van het enum.

Code:

In hetzelfde voorbeeld van Dagen hierboven, zouden we de genoemde constanten afdrukken via de GetNames-methode.

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

Output:

Regels voor Enum in C #

  • Enum is een type, geen variabele / constante / methode.
  • Enum-benoemde constanten kunnen niet worden gedupliceerd. Ze moeten uniek zijn
  • Het onderliggende type enum kan niet char zijn.
  • Het standaard onderliggende type enum is een geheel getal.
  • Standaard beginnen de waarden die zijn toegewezen aan enum-benoemde constanten vanaf 0, en worden ze verhoogd met 1 voor elke opeenvolgende benoemde constante.

Voordelen van Enum in C #

Enums zijn een zeer voordelige codeerpraktijk. Ze worden gebruikt om de set constanten voor de toepassing of het programma te definiëren. De set blijft dus constant en voorkomt chaos in het programma, vooral wanneer het een enorme applicatie is waarbij meerdere ontwikkelaars zijn betrokken.

Er zijn veel scenario's waarin enums kunnen worden gebruikt. Dagen van de week, maanden van het jaar, omrekeningsverhoudingen voor temperaturen, omrekeningsfactoren voor tijdzones of eventuele stamtabelgegevens voor de toepassing. Dit maakt de code leesbaarder en gemakkelijker te begrijpen.

Conclusie

We hebben dus het gebruik van enum gezien in C #. We hebben geleerd hoe het werkt en wat het praktisch nut ervan kan zijn. We hebben de regels begrepen waaraan moet worden voldaan bij het gebruik van enums. Er zijn ook methoden die ons helpen het overzicht te openen en op te maken. Het wordt aanbevolen om enums in uw code zoveel mogelijk te gebruiken. Dit helpt je bij het observeren van goede codeermethoden en leert ook enums.

Aanbevolen artikelen

Dit is een gids voor Enum in C #. Hier bespreken we de werking, methoden, regels en voordelen van Enum in C # met voorbeelden en code-implementatie. U kunt ook de volgende artikelen bekijken voor meer informatie -

  1. Palindroom in C # met voorbeelden
  2. Hoe toegang te krijgen tot naamruimten in C #?
  3. Top 3 soorten patronen in C #
  4. Recursieve functie in C #
  5. Vervolg statement work in C # met voorbeelden
  6. Factoren in R | Hoe | voordelen