Enumeratorer
Enum, også kjent som Enumerator, er en struktur for å gruppere sammen noen integrale konstanter. Konstantene er i hovedsak av typen int
.
Følgende er syntaksen for å opprette en enum:
index.cs
1234567enum EnumName { Const1, Const2, Const3, ... }
Som standard har det første elementet i en enum verdien 0, det andre elementet har verdien 1
og så videre.
For eksempel:
index.cs
12345678910enum Days { Monday, // 0 Tuesday, // 1 Wednesday, // 2 Thursday, // 3 Friday, // 4 Saturday, // 5 Sunday // 6 }
Du kan få tilgang til verdiene til disse konstantene ved å bruke syntaksen enumName.constantName
.
For eksempel:
index.cs
123456789101112131415161718192021222324using System; enum Days { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } class ConsoleApp { static void Main(string[] args) { // Explicitly converting the enum elements to 'int' and then outputting them Console.WriteLine((int)Days.Monday); // 0 Console.WriteLine((int)Days.Wednesday); // 2 Console.WriteLine((int)Days.Friday); // 4 Console.WriteLine((int)Days.Sunday); // 6 } }
Merk at i eksempelet ovenfor må du eksplisitt konvertere konstanten til en int
-datatype, siden disse konstantene som standard er av typen Days
. Dette betyr at enumen Days
er en ny datatype som du har opprettet. Derfor kan den lagres i en variabel av typen Days
:
Days day = Days.Friday;
Dette er nyttig i situasjoner som switch-setninger.
For eksempel:
index.cs
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748using System; enum Days { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } class ConsoleApp { static void Main(string[] args) { Days day = Days.Friday; switch (day) { case Days.Monday: Console.WriteLine("It is Monday"); break; case Days.Tuesday: Console.WriteLine("It is Tuesday"); break; case Days.Wednesday: Console.WriteLine("It is Wednesday"); break; case Days.Thursday: Console.WriteLine("It is Thursday"); break; case Days.Friday: Console.WriteLine("It is Friday"); break; case Days.Saturday: Console.WriteLine("It is Saturday"); break; case Days.Sunday: Console.WriteLine("It is Sunday"); break; default: Console.WriteLine("Invalid Day"); break; } } }
Du kan også manuelt tildele verdier til enum-konstantene. De ufordelte konstantene får inkrementerte verdier fra de forrige elementene:
index.cs
123456789101112131415161718192021222324252627using System; enum Days { Monday, Tuesday, Wednesday = 5, Thursday, Friday, Saturday = 10, Sunday } class ConsoleApp { static void Main(string[] args) { // Explicitly converting the enum elements to 'int' and then outputting them Console.WriteLine((int)Days.Monday); Console.WriteLine((int)Days.Tuesday); Console.WriteLine((int)Days.Wednesday); Console.WriteLine((int)Days.Thursday); Console.WriteLine((int)Days.Friday); Console.WriteLine((int)Days.Saturday); Console.WriteLine((int)Days.Sunday); } }
1. Hva er en enum i C#?
2. Hvilket nøkkelord brukes for å definere en enum?
3. Hva er standard underliggende datatype for verdiene i en enum?
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Can you give an example of how to define an enum?
How do I use enums in a switch statement?
What happens if I assign the same value to two enum constants?
Awesome!
Completion rate improved to 2.04
Enumeratorer
Sveip for å vise menyen
Enum, også kjent som Enumerator, er en struktur for å gruppere sammen noen integrale konstanter. Konstantene er i hovedsak av typen int
.
Følgende er syntaksen for å opprette en enum:
index.cs
1234567enum EnumName { Const1, Const2, Const3, ... }
Som standard har det første elementet i en enum verdien 0, det andre elementet har verdien 1
og så videre.
For eksempel:
index.cs
12345678910enum Days { Monday, // 0 Tuesday, // 1 Wednesday, // 2 Thursday, // 3 Friday, // 4 Saturday, // 5 Sunday // 6 }
Du kan få tilgang til verdiene til disse konstantene ved å bruke syntaksen enumName.constantName
.
For eksempel:
index.cs
123456789101112131415161718192021222324using System; enum Days { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } class ConsoleApp { static void Main(string[] args) { // Explicitly converting the enum elements to 'int' and then outputting them Console.WriteLine((int)Days.Monday); // 0 Console.WriteLine((int)Days.Wednesday); // 2 Console.WriteLine((int)Days.Friday); // 4 Console.WriteLine((int)Days.Sunday); // 6 } }
Merk at i eksempelet ovenfor må du eksplisitt konvertere konstanten til en int
-datatype, siden disse konstantene som standard er av typen Days
. Dette betyr at enumen Days
er en ny datatype som du har opprettet. Derfor kan den lagres i en variabel av typen Days
:
Days day = Days.Friday;
Dette er nyttig i situasjoner som switch-setninger.
For eksempel:
index.cs
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748using System; enum Days { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } class ConsoleApp { static void Main(string[] args) { Days day = Days.Friday; switch (day) { case Days.Monday: Console.WriteLine("It is Monday"); break; case Days.Tuesday: Console.WriteLine("It is Tuesday"); break; case Days.Wednesday: Console.WriteLine("It is Wednesday"); break; case Days.Thursday: Console.WriteLine("It is Thursday"); break; case Days.Friday: Console.WriteLine("It is Friday"); break; case Days.Saturday: Console.WriteLine("It is Saturday"); break; case Days.Sunday: Console.WriteLine("It is Sunday"); break; default: Console.WriteLine("Invalid Day"); break; } } }
Du kan også manuelt tildele verdier til enum-konstantene. De ufordelte konstantene får inkrementerte verdier fra de forrige elementene:
index.cs
123456789101112131415161718192021222324252627using System; enum Days { Monday, Tuesday, Wednesday = 5, Thursday, Friday, Saturday = 10, Sunday } class ConsoleApp { static void Main(string[] args) { // Explicitly converting the enum elements to 'int' and then outputting them Console.WriteLine((int)Days.Monday); Console.WriteLine((int)Days.Tuesday); Console.WriteLine((int)Days.Wednesday); Console.WriteLine((int)Days.Thursday); Console.WriteLine((int)Days.Friday); Console.WriteLine((int)Days.Saturday); Console.WriteLine((int)Days.Sunday); } }
1. Hva er en enum i C#?
2. Hvilket nøkkelord brukes for å definere en enum?
3. Hva er standard underliggende datatype for verdiene i en enum?
Takk for tilbakemeldingene dine!