概念
枚举是一组命名整型常量
枚举类型是使用 enum 关键字声明的
例如定义一个变量,该变量的值表示一周中的一天:
enum Days { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday};
声明枚举变量
一般语法:
enum <enum_name>
{
enumeration list
};
enum_name:枚举类型名称
enumeration list:使用逗号分隔的标识符列表
枚举列表中的每个符号表示一个整数值,后面符号的值大于前面符号的值
使用特点
枚举声明可以显式地声明byte、sbyte、short、ushort、int、uint、long或ulong类型作为对应的基础类型
没有显式地声明基础类型的枚举声明意味着所对应的基础类型是int
任意两个枚举成员不能具有相同的名称
枚举成员默认值在枚举类型中声明的第一个枚举成员它的默值为零
以后的枚举成员值是将前一个枚举成员(按照文本顺序)的值加1得到的
为枚举成员显示赋值允许多个枚举成员有相同的值
枚举值都不能超过它的基础类型范围,否则会报错
枚举类型与基础类型的转换基础类型不能隐式转换为枚举类型,枚举类型也不能隐式转换为基础类型
使用getNames()遍历
1 using System; 2 3 public class EnumExample 4 { 5 public enum Days { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday }; 6 7 public static void Main() 8 { 9 foreach (String day in Enum.GetNames(typeof(Days))) 10 { 11 Console.WriteLine(day); 12 Console.ReadKey(); 13 } 14 } 15 }
结果
使用getValues()遍历
1 using System; 2 3 public class EnumExample 4 { 5 public enum Days { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday }; 6 7 public static void Main() 8 { 9 foreach (Days day in Enum.GetValues(typeof(Days))) 10 { 11 Console.WriteLine(day); 12 Console.ReadKey(); 13 } 14 } 15 }
结果