Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Enumeradores | Structs y Enumeradores
C# Más Allá de lo Básico

bookEnumeradores

Enum, también conocido como Enumerador, es una estructura para agrupar constantes integrales. Las constantes son básicamente del tipo int.

La siguiente es la sintaxis para crear un enum:

index.cs

index.cs

copy
1234567
enum EnumName { Const1, Const2, Const3, ... }

Por defecto, el primer elemento de un enum tiene el valor 0, el segundo elemento tiene el valor 1 y así sucesivamente.

Por ejemplo:

index.cs

index.cs

copy
12345678910
enum Days { Monday, // 0 Tuesday, // 1 Wednesday, // 2 Thursday, // 3 Friday, // 4 Saturday, // 5 Sunday // 6 }

Puedes acceder a los valores de estas constantes utilizando la sintaxis enumName.constantName.

Por ejemplo:

index.cs

index.cs

copy
123456789101112131415161718192021222324
using 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 } }

Tenga en cuenta que en el ejemplo anterior es necesario convertir explícitamente la constante a un tipo de dato int, ya que estas constantes son de tipo Days por defecto, lo que significa que el enum Days es un nuevo tipo de dato que usted creó. Por lo tanto, puede almacenarse en una variable de tipo Days:

Days day = Days.Friday;

Esto resulta útil en lugares como las sentencias switch.

Por ejemplo:

index.cs

index.cs

copy
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
using 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; } } }

También es posible asignar manualmente valores a las constantes del enum. Las constantes no asignadas toman valores incrementados de los elementos anteriores:

index.cs

index.cs

copy
123456789101112131415161718192021222324252627
using 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. ¿Qué es un enum en C#?

2. ¿Qué palabra clave se utiliza para definir un enum?

3. En un enum, ¿cuál es el tipo subyacente predeterminado para los valores?

question mark

¿Qué es un enum en C#?

Select the correct answer

question mark

¿Qué palabra clave se utiliza para definir un enum?

Select the correct answer

question mark

En un enum, ¿cuál es el tipo subyacente predeterminado para los valores?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 10

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Awesome!

Completion rate improved to 2.04

bookEnumeradores

Desliza para mostrar el menú

Enum, también conocido como Enumerador, es una estructura para agrupar constantes integrales. Las constantes son básicamente del tipo int.

La siguiente es la sintaxis para crear un enum:

index.cs

index.cs

copy
1234567
enum EnumName { Const1, Const2, Const3, ... }

Por defecto, el primer elemento de un enum tiene el valor 0, el segundo elemento tiene el valor 1 y así sucesivamente.

Por ejemplo:

index.cs

index.cs

copy
12345678910
enum Days { Monday, // 0 Tuesday, // 1 Wednesday, // 2 Thursday, // 3 Friday, // 4 Saturday, // 5 Sunday // 6 }

Puedes acceder a los valores de estas constantes utilizando la sintaxis enumName.constantName.

Por ejemplo:

index.cs

index.cs

copy
123456789101112131415161718192021222324
using 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 } }

Tenga en cuenta que en el ejemplo anterior es necesario convertir explícitamente la constante a un tipo de dato int, ya que estas constantes son de tipo Days por defecto, lo que significa que el enum Days es un nuevo tipo de dato que usted creó. Por lo tanto, puede almacenarse en una variable de tipo Days:

Days day = Days.Friday;

Esto resulta útil en lugares como las sentencias switch.

Por ejemplo:

index.cs

index.cs

copy
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
using 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; } } }

También es posible asignar manualmente valores a las constantes del enum. Las constantes no asignadas toman valores incrementados de los elementos anteriores:

index.cs

index.cs

copy
123456789101112131415161718192021222324252627
using 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. ¿Qué es un enum en C#?

2. ¿Qué palabra clave se utiliza para definir un enum?

3. En un enum, ¿cuál es el tipo subyacente predeterminado para los valores?

question mark

¿Qué es un enum en C#?

Select the correct answer

question mark

¿Qué palabra clave se utiliza para definir un enum?

Select the correct answer

question mark

En un enum, ¿cuál es el tipo subyacente predeterminado para los valores?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 10
some-alt