tnblog
首页
视频
资源
登录
什么时候才能领悟,取之越多失之越多
排名
5
文章
229
粉丝
15
评论
7
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

c#枚举,.net枚举

6392人阅读 2020/9/23 16:56 总访问:1165823 评论:0 收藏:0 手机
分类: .NET


枚举的作用:

1、枚举能够使代码更加清晰,允许使用描述性的名称表示整数值。

2、枚举使代码易于维护,有助于确保给变量指定合法的、期望的值。

3、枚举使代码易输入和读取。


声明 enum 变量

声明枚举的一般语法:

  1. enum <enum_name>
  2.     enumeration list 
  3. };


实例:

  1. using System;
  2. public class EnumTest
  3. {
  4.     enum Day { Sun, Mon, Tue, Wed, Thu, Fri, Sat };
  5.     static void Main()
  6.     {
  7.         int x = (int)Day.Sun;
  8.         int y = (int)Day.Fri;
  9.         Console.WriteLine("Sun = {0}", x);
  10.         Console.WriteLine("Fri = {0}", y);
  11.     }
  12. }


实例2:获取的不同方式:

  1. class Program
  2.     {
  3.         static void Main(string[] args)
  4.         {
  5.             //输出方式一:
  6.             Console.WriteLine("获取的内容是的:" + Enum.GetName(typeof(Man), 1));  
  7.             //输出方式二:
  8.             string[] array1 = Enum.GetNames(typeof(Man));
  9.             Console.WriteLine("获取的内容是:" + array1[2]);  
  10.             //输出方式三:
  11.             Array array2 = Enum.GetValues(typeof(Man));
  12.             Console.WriteLine("获取的内容是:" + array2.GetValue(3)); 
  13.             //输出方式四:
  14.             Type t = Enum.GetUnderlyingType(typeof(Man));
  15.             Console.WriteLine("我输出的是值类型:"+t);       //输出 Int32
  16.             //输出方式五:由值获取内容
  17.             int i = 0;
  18.             string Name = Enum.Parse(typeof(Man), i.ToString()).ToString();     //此时 Name="T"
  19.             Console.WriteLine("T:" + Name);
  20.             //输出方式六:由值获取内容
  21.             string Name2 = "L";
  22.             int j = Convert.ToInt32(Enum.Parse(typeof(Man), Name2));     //此时 j=2
  23.             Console.WriteLine("我是L对应的值序号:"+j);
  24.             Console.ReadKey();
  25.         }
  26.         enum Man:int 
  27.         {
  28.             T = 1,
  29.             N= 2,
  30.             B = 3,
  31.             L = 0
  32.         }
  33.     }


欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)

评价