1.枚举是一组命名整型常量,使用 enum 关键字声明的。
2.eg:一年四季用枚举来表达:enum Season{Spring,Summer,Fall,Winter}
3.枚举变量只有赋值后才可以使用,使用方法用枚举变量名点枚举内容,如:Season s=Season.Fall;
4.有时枚举可能有多种表达,比如秋天可以用Fall表示,也可以用Autumn表示,此时枚举申明为:enum Season{Spring,Summer,Autumn=Fall,Winter}
5.申明枚举时,枚举字面值默认是int类型,枚举内部的每个元素都关联(对应)一个整数值(字面值)。默认第一个元素对应整数0,以后每个元素对应的数值都递增1。上面申明的一年四季Season里面的四个字面值Spring,Summer,Fall,Winter分别对应一个数值为:0,1,2,3
6.如果在初始化枚举字面时申明 enum Season{Spring=1,Summer,Fall,Winter}那么Summer,Fall,Winter数值为2,3,4。
7.枚举可基于8种类型的任何一种:byte,sbyte,short,ushort,int,uint,long或者ulong。
8.枚举类型与其他常用类型的相互转换:
下面例子都用 enum Season { Spring, Summer, Fall, Winter };
1)与int转换
//int类型转为枚举
int num1 = 1;
Season s1 = (Season)num1;
Console.WriteLine(s1);//输出Spring
//枚举转int类型
Season season1 = Season.Summer;
int num2 = (int)season1;
Console.WriteLine(num2);//输出1
2)与spring转换
//string类型转枚举
string s2 = "Spring";
Season season2 = (Season)Enum.Parse(typeof(Season),s2);
Console.WriteLine(season2);
//枚举转string
Season s3 = Season.Winter;
Console.WriteLine(s3);//string类型有默认toString()方法