枚举(Visual C# 速成版)

更新: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 };

请参见

概念

C# 语言入门

内置数据类型(Visual C# 速成版)

值类型和引用类型(Visual C# 速成版)

参考

常量(C# 编程指南)