列舉型別 (Visual C# Express)
更新:2007 年 11 月
C# 讓您能夠使用 enum 關鍵字建立自己的具名常數組。這些資料型別可讓您宣告一組名稱或其他常值,以便定義所有可能指派至變數的數值。
例如,如果程式處理星期的天數,您可能想要建立稱為 DayOfWeek 的新型別。然後您可以宣告 DayOfWeek 型別的新變數並指派值。使用這個資料型別可以讓您的程式碼更容易閱讀,同時避免將不合法或未預期的值指派給變數。
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
}
}
進階的列舉型別技術
下列是幾項有用的 enum 資料型別進階功能。
顯示列舉型別的常值
如果您需要存取 enum 資料型別中使用的名稱或文字,可以如下所示使用 ToString() 方法:
DayOfWeek day = DayOfWeek.Wednesday;
System.Console.WriteLine(day.ToString()); // displays Wednesday
設定預設值
根據預設,列舉型別的第一個值是零。您可以指定不同的初始值,如下所示:
enum Color { Red = 1, Yellow = 2, Blue = 3 };
事實上,您可以為所有數值定義唯一的整數值:
enum Medal { Gold = 30, Silver = 20, Bronze = 10 };