.net框架 - Enum枚举
概要
在C#或C++,java等一些计算机编程语言中,枚举类型是一种基本数据类型而不是构造数据类型。
在C语言等计算机编程语言中,它是一种构造数据类型。
它用于声明一组命名的常数,当一个变量有几种可能的取值时,可以将它定义为枚举类型。
枚举成员
枚举成员是该枚举类型的命名常数,任意两个枚举成员不能具有相同的名称。
每个枚举成员均具有相关联的常数值,此值的类型就是枚举的基础类型。
C#中枚举基础类型可为:byte、sbyte、short、ushort、int、uint、long 或 ulong。
C#中枚举基础类型默认为int。
若不显示为枚举成员赋值,其成员值依成员顺序依次为0,1,2,3....n。
//基础类型默认为int public enum MyEnum { 中国 = 1, //枚举成员常数值类型为int 美国 = 2, 日本 = 3 } //定义基础类型为long的枚举 public enum MyEnum2 : long { 中国 = 1L, //枚举成员常数值类型为long 美国 = 2L, 日本 = 3L }
枚举类型基本操作
枚举类型转换、常用的方法,见示例代码:
public void EnumTest() { MyEnum myEnum = MyEnum.中国; int myEnumValue = (int)myEnum; //myEnumValue = 1; string myEnumText = myEnum.ToString(); //myEnumText="中国" MyEnum myEnum2 = (MyEnum)Enum.Parse(typeof(MyEnum), "2"); //myEnum2 = MyEnum.美国 MyEnum myEnum3 = (MyEnum)Enum.Parse(typeof(MyEnum), "日本"); //myEnum2 = MyEnum.日本 if(Enum.IsDefined(typeof(MyEnum),"日本")) { //MyEnum有成员名为“日本”的成员 } if (Enum.IsDefined(typeof(MyEnum), "2")) { //MyEnum有成员值为“2”的成员 } } public enum MyEnum { 中国 = 1, 美国 = 2, 日本 = 3 }
参考
http://www.360doc.com/content/14/0516/16/10966281_378264063.shtml