Enumerazioni (Visual C# Express)
Aggiornamento: novembre 2007
C# consente di creare il proprio set di costanti denominate utilizzando la parola chiave enum. Questi tipi di dati consentono di dichiarare un set di nomi o di altri valori letterali che definiscono tutti i valori possibili assegnabili a una variabile.
Ad esempio, se il programma gestisce i giorni della settimana, può essere utile creare un nuovo tipo denominato DayOfWeek. È possibile quindi dichiarare una nuova variabile del tipo DayOfWeek e assegnarle un valore. L'utilizzo di questo tipo di dati semplifica la lettura del codice e impedisce inoltre l'assegnazione di un valore non valido o imprevisto alla variabile.
public enum DayOfWeek
{
Sunday = 0,
Monday = 1,
Tuesday = 2,
Wednesday = 3,
Thursday = 4,
Friday = 5,
Saturday = 6
}
class Program
{
static void Main()
{
DayOfWeek day = DayOfWeek.Monday;
int i = (int) DayOfWeek.Monday;
System.Console.WriteLine(day); // displays Monday
System.Console.WriteLine(i); // displays 1
}
}
Tecniche di enumerazione più avanzate
Di seguito vengono presentate altre utili funzionalità dei tipi di dati enum.
Visualizzazione dei valori letterali dell'enumerazione
Per accedere al nome o alle parole utilizzate nel tipo di dati enum, è possibile utilizzare il metodo ToString(), come illustrato di seguito:
DayOfWeek day = DayOfWeek.Wednesday;
System.Console.WriteLine(day.ToString()); // displays Wednesday
Impostazione dei valori predefiniti
Per impostazione predefinita, il primo valore nel tipo enumerato è uno zero. È possibile specificare un altro valore iniziale, come illustrato di seguito:
enum Color { Red = 1, Yellow = 2, Blue = 3 };
In realtà, è possibile definire valori integer univoci per tutti i valori:
enum Medal { Gold = 30, Silver = 20, Bronze = 10 };
Vedere anche
Concetti
Nozioni di base del linguaggio C#
Tipi di dati incorporati (Visual C# Express)
Tipi di valore e di riferimento (Visual C# Express)