Area di riferimento
- Developing applications that use system types and collections
- Manage data in a .NET Framework application by using the .NET Framework 2.0 system types
- Value types
Le enumerazioni permettono allo sviluppatore di definire un insieme di simboli che hanno un fissato valore. Lo scopo è semplificare la manutenzione del codice nonchè migliorare notevolmente la sua leggibilità. Un tipo enumerato deriva dalla classe astratta System.Enum che a sua volta deriva da System.ValueType quindi gli enumeratori sono value types. La classe Enum fornisce dei metodi astratti che permettono di effettuare molte operazioni sugli enumeratori.
Definizione di un tipo enumerato:
enum Giorni
{
Lunedì,
Martedì,
Mercoledì,
Giovedì,
Venerdì,
Sabato,
Domenica
}
Utilizzo di un tipo enumerato:
Giorni g = Giorni.Sabato;
if ( g == Giorni.Sabato )
{
Console.WriteLine("Oggi è {0}", g);
}
Visualizzare valore numerico e simbolico di un enumeratore:
Giorni[] giorni = (Giorni[]) Enum.GetValues(typeof (Giorni));
foreach (Giorni g in giorni)
{
Console.WriteLine("{0:D}\t{0:G}", g);
}
Ottenere un tipo enumeratore a partire dalla stringa simbolica che lo caratterizza:
Giorni giorno = (Giorni) Enum.Parse(typeof (Giorni), "Sabato", true);