枚举(Enumeration)
枚举类型 是由基础整型数值类型的一组命名常量定义的值类型。(这个拗口的表述来自官方文档)
翻译成人话:
- 枚举是值类型。
- 枚举的成员是常量
- 默认情况下,枚举成员的关联常数值为类型 int(它们从零开始,并按定义文本顺序递增 1。 可以显式指定任何其他整数数值类型作为枚举类型的基础类型。 还可以显式指定关联的常数值)。
枚举常用于表示一组相关的常量,例如星期几、月份等。
使用关键字 enum 定义一个枚举类型。
示例:
enum Weekday
{
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
}
在上面的示例中,我们定义了一个名为 Weekday 的枚举类型,并列出了一周中的每一天作为枚举常量。默认情况下,枚举常量的值从0开始自动递增,所以 Monday 的值为0,Tuesday 的值为1,以此类推。
可以使用枚举类型来声明变量,并将其赋值为枚举常量。
例如:
Weekday today = Weekday.Monday;
在上面的示例中,我们声明了一个名为 today 的变量,并将其赋值为 Weekday 枚举类型的Monday 常量。
除了默认的自动递增值,我们还可以为枚举常量指定特定的值。
例如:
enum Month
{
January = 1,
February,
March,
April,
May,
June,
July,
August,
September,
October,
November,
December
}
在上面的示例中,我们为 January 指定了值1,而后续的常量会自动递增。
枚举类型在编程中非常有用,它可以提高代码的可读性和可维护性。通过使用枚举,我们可以使用有意义的名称来表示一组相关的常量,而不是使用难以理解的数字或字符串。