C# 枚举

C# 枚举
枚举类型(也称为枚举)为定义一组可以赋给变量的命名整数常量提供了一种有效的方法。enum 关键字用于声明枚举。
 
定义枚举的语法
       enum 枚举的名称 
      {
         写上要限定的取值,每一个取值使用逗号分隔。  
       }
      定义枚举的位置:命名空间下,与类同级别。
 1 namespace Test
 2 {
 3     enum Direction
 4     {
 5         East = 1,
 6         South = 2,
 7         West = 3,
 8         North = 4
 9     }
10 }

 

枚举方法
1、每一个枚举值默认情况下都有1个对应的int类型的数,这个数从0开始,依次递增。可以通过强转的语法将枚举值对应的整型的数取出来。        
1 Direction dir = Direction.West;
2 int i = (int)dir;
     
2、也可以将一个整形的数强制转换为其所对应的枚举值。如果没有对应的枚举值,就原样的输出。
1 int i = 3;
2 Direction dir = (Direction)i;
 
3、将字符串转换为枚举类型
1 string strDir = "East";
2 Direction dir = (Direction)Enum.Parse(typeof(Direction), strDir);
  当然,并不是所有的字符串值都会映射为一个对应的枚举值。如果传送一个值不能映射成枚举值中的一个,就会产生错误。这些值是区分大小写的,所以如果字符串与一个值相同,但大小写不同,就会产生错误。
   忽略大小写的转换:
Direction dir = (Direction)Enum.Parse(typeof(Direction), strDir, true);
  Enum.Parse()方法的第二个重载带3个参数,第一个参数是要使用的枚举类型。其语法是关键字typeof后跟放在括号中的枚举类名。第二个参数是要转换的字符串,第三个参数是一个bool,指定在进行转换时是否忽略大小写。
 
4、将枚举转换为字符串
      ToString()方法。
  枚举.ToString("d")将枚举值对应的整形的数转换为字符串。
posted @ 2015-08-08 18:01  Chen_Weifeng  阅读(192)  评论(0编辑  收藏  举报