logo

C# Enum

Az enum a C# nyelvben felsorolásként is ismert. Nevezett konstansok, például évszak, napok, hónap, méret stb. tárolására szolgál. Az enum-konstansokat enumerátoroknak is nevezik. Az enum C#-ban deklarálható az osztályon és struktúrákon belül vagy kívül.

Az Enum konstansok alapértelmezett értékei 0-tól kezdődnek, és egyesével növekszik. De módosíthatjuk az alapértelmezett értéket.

Emlékezendő pontok

  • enum fix konstanskészlettel rendelkezik
  • enum javítja a típusbiztonságot
  • enum átjárható

C# Enum példa

Nézzünk egy egyszerű példát a C# enum-ra.

 using System; public class EnumExample { public enum Season { WINTER, SPRING, SUMMER, FALL } public static void Main() { int x = (int)Season.WINTER; int y = (int)Season.SUMMER; Console.WriteLine('WINTER = {0}', x); Console.WriteLine('SUMMER = {0}', y); } } 

Kimenet:

 WINTER = 0 SUMMER = 2 

C# enum példa a kezdő index megváltoztatására

 using System; public class EnumExample { public enum Season { WINTER=10, SPRING, SUMMER, FALL } public static void Main() { int x = (int)Season.WINTER; int y = (int)Season.SUMMER; Console.WriteLine('WINTER = {0}', x); Console.WriteLine('SUMMER = {0}', y); } } 

Kimenet:

 WINTER = 10 SUMMER = 12 

C# enum példa a napokhoz

 using System; public class EnumExample { public enum Days { Sun, Mon, Tue, Wed, Thu, Fri, Sat }; public static void Main() { int x = (int)Days.Sun; int y = (int)Days.Mon; int z = (int)Days.Sat; Console.WriteLine('Sun = {0}', x); Console.WriteLine('Mon = {0}', y); Console.WriteLine('Sat = {0}', z); } } 

Kimenet:

 Sun = 0 Mon = 1 Sat = 6 

C# enum példa: az összes érték bejárása a getNames() segítségével

 using System; public class EnumExample { public enum Days { Sun, Mon, Tue, Wed, Thu, Fri, Sat }; public static void Main() { foreach (string s in Enum.GetNames(typeof(Days))) { Console.WriteLine(s); } } } 

Kimenet:

 Sun Mon Tue Wed Thu Fri Sat 

C# enum példa: az összes érték bejárása a getValues() segítségével

 using System; public class EnumExample { public enum Days { Sun, Mon, Tue, Wed, Thu, Fri, Sat }; public static void Main() { foreach (Days d in Enum.GetValues(typeof(Days))) { Console.WriteLine(d); } } } 

Kimenet:

 Sun Mon Tue Wed Thu Fri Sat