枚举类型由一组整数常量组成,支持:byte ,sbyte,short,ushort,int,unit,long,ulong这些基础类型。枚举的默认类型:int。
1.使用枚举的好处之一:方面理解,将经常使用到的值作为枚举类型,可以轻松推测代码的含义,如将灯的状态 On=1,Off=0;
之二:使代码更规范,防止意外调用;
2.枚举类型继承自Enum类,该类派生自ValueType,所以枚举类型为值类型。
3.声明枚举类型:
enum yiqiok{a,b,c}
上述声明中a,b,c的值依次为0,1,2.
也可以自定义枚举中常数的值:
enum yiqiok{a=5,b,c}
这时a,b,c的值依次为5,6,7.
枚举中未自定义的值总是比前一项增加一;默认从0开始。
将枚举的基础类型声明为非int 类型:
enum yiqiok :long{a,b,c}
4.获取枚举的值列表:
class Program { enum yiqiok { a = 9, b = 3, c = 8 }; public static void Main() { var values = Enum.GetValues(typeof(yiqiok));//由于返回类型不确定,故使用var 来声明 foreach(int v in values ) { Console.Write(v+"\t"); } } }
结果:
5.获取枚举各成员的名字:
enum yiqiok { a = 9, b = 3, c = 8 }; public static void Main() { Console.WriteLine("枚举yiqiok中常数8的名字为:{0}",Enum.GetName(typeof(yiqiok),yiqiok.c));//输出8对应的名字 string[] names = Enum.GetNames(typeof(yiqiok)); foreach (string name in names)//输出各成员名字 { Console.Write(name+"\t"); } }
结果: