C#_基础_枚举(七)

语法:

[public] enum 枚举名

{

值1,

值2,

值3    // 注意:最后的元素后没有逗号

}

1.public 访问修饰符,放在[] 中括号中,是默认public。公开的,哪都可以访问

2.enum:声明枚举关键字,枚举类型

3.枚举名:规范每个单词首字母大写

4.枚举声明位置:声明在命名空间内,类外边,说明这个命名空间下所有的类都可以用

                     声明在类中,这个类中所有的方法都使用

作用:规范

1  //  QQ的登录状态
2      public enum QQState
3         {
4             OnLine  ,
5             OffLine ,
6             Leave,
7             Busy,
8             QMe
9         }
1 static void Main()
2         {
3             //枚举声明,赋值
4             QQState state = QQState.OnLine;
5         }

****枚举类型和int类相互转换,枚举类型跟int类型是兼容的

 1.枚举类型强转int类型

  

1  //枚举类型强转int类型
2               int n =(int ) state;
3               Console.WriteLine((int)(QQState.OnLine));
4               Console.WriteLine((int)(QQState.OffLine));
5               Console.WriteLine((int)(QQState.Leave));
6               Console.WriteLine((int)(QQState.Busy));
7               Console.WriteLine((int)(QQState.QMe));

2.将int类型强转枚举类型

   QQState state2 = (QQState)n;
     Console.WriteLine(state2); //输出 Online
 1 //枚举练习:
 2              //提示用户先择在线状态,并将用户的输入转换成枚举类型,再打印到控制台
 3 
 4              Console.WriteLine("请选择QQ在线状态 1--Online ,2-- OffLine, 3--Leave。。。。");
 5              string input = Console.ReadLine();
 6 
 7              switch (input)
 8              {
 9                  case "1":
10                      state2 = (QQState)Enum.Parse(typeof(QQState), input);
11                      Console.WriteLine("您选择的状态是{0}",state2);
12                      break;
13                  case "2":
14                      state2 = (QQState)Enum.Parse(typeof(QQState), input);
15                      Console.WriteLine("您选择的状态是{1}", state2);
16                      break;
17                  case "3":
18                      state2 = (QQState)Enum.Parse(typeof(QQState), input);
19                      Console.WriteLine("您选择的状态是{2}", state2);
20                      break;
21                  case "4":
22                      state2 = (QQState)Enum.Parse(typeof(QQState), input);
23                      Console.WriteLine("您选择的状态是{3}", state2);
24                      break;
25                  case "5":
26                      state2 = (QQState)Enum.Parse(typeof(QQState), input);
27                      Console.WriteLine("您选择的状态是{4}", state2);
28                      break;
29                  default:
30                      break;
31              }
枚举练习题:
原文地址:https://www.cnblogs.com/CeasarH/p/9163679.html