C#枚举相关用法

C#枚举相关用法,第1张

概述什么是枚举?   枚举是一组命名整型常量。枚举类型是使用 enum 关键字声明的。枚举是值类型。换句话说,枚举包含自己的值,且不能继承或传递继承。 定义枚举: public enum Direction{ [Description("东")] East, [Description("南")] South, [Description("西")]

什么是枚举?

  枚举是一组命名整型常量。枚举类型是使用 enum 关键字声明的。枚举是值类型。换句话说,枚举包含自己的值,且不能继承或传递继承。

定义枚举:

@H_419_21@public enum Direction{ [Description("东")] East,[Description("南")] South,[Description("西")] West,[Description("北")] north }

默认枚举的int值从零开始,枚举的下一项int值会自动累加上一个枚举项的值。例如:East = 1,则South=2,West=3,以此类推。。。 或East = 4,则South=5,West=7,north=8。。。

获取枚举的int值:

@H_419_21@var eastNumber = (int)Direction.East;// eastNumber = 0;

获取枚举字符串:

@H_419_21@var eastString = Direction.East.ToString();// eastString= "East";

int转枚举:

@H_419_21@var east = (Direction)0;// east = Direction.East

string转枚举:

@H_419_21@const string strEnum = "East";// ignoreCase: true/false (是否忽略大小写。true:忽略大小写(默认),false: 不忽略)var east = Enum.Parse(typeof(Direction),strEnum,ignoreCase: true);// east = Direction.East;

获取枚举的描述(Description):

@H_419_21@/// <summary>/// 获取枚举描述的方法/// </summary>/// <param name="enumValue"></param>/// <returns></returns>public static string GetEnumDescription(Enum enumValue){ string value = enumValue.ToString(); FIEldInfo fIEld = enumValue.GetType().GetFIEld(value); object[] obJs = fIEld.GetCustomAttributes(typeof(DescriptionAttribute),false); //获取描述属性 if (obJs.Length == 0) //当描述属性没有时,直接返回名称 return value; DescriptionAttribute descriptionAttribute = (DescriptionAttribute)obJs[0]; return descriptionAttribute.Description;} @H_419_21@// 调用获取枚举描述的方法var description = GetEnumDescription(Direction.East);// description = "东";

枚举的循环:

@H_419_21@foreach (Direction item in Enum.GetValues(typeof(Direction))){ // item is East/South/West/north} 总结

以上是内存溢出为你收集整理的C#枚举相关用法全部内容,希望文章能够帮你解决C#枚举相关用法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1214776.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存