动态获取枚举的名称/值对
获取 动态 名称 枚举
2023-09-14 09:00:20 时间
实现效果:
知识运用:
System.Enum类的 Enum.GetUnderlyingType()方法 //返回用于保存枚举的数据类型
static void Main(string[] args)
{
Console.WriteLine("***Fun with Enums***");
//创建职员类型
EmpType emp = EmpType.Contractor;
AskForBonus(emp);
♦//输出枚举的存储 使用GetUnderlyingType方法
Console.WriteLine("EmpType uses a {0} for storage",Enum.GetUnderlyingType(emp.GetType()));
Console.ReadKey();
}♦//使用C#的Typeof
Console.WriteLine("EmpType uses a {0} for storage", Enum.GetUnderlyingType(typeof(EmpType)));
System.Enum类的 GetValues() 静态方法 //返回一个System.Array的一个实例(数组中的每一项都对应指定枚举的一个成员)
实现代码:
static void EvaluateEnum(System.Enum e) { Console.WriteLine("=> Information about {0}",e.GetType().Name); Console.WriteLine("UnderLying storage type: {0}",System.Enum.GetUnderlyingType(e.GetType())); Array arr=System.Enum.GetValues(e.GetType()); Console.WriteLine("This enum has {0}member.",arr.Length); for (int i = 0; i < arr.Length;i++ ) { Console.WriteLine("Name: {0}, Value: {0:D}",arr.GetValue(i)); } Console.WriteLine(); } static void Main(string[] args) { ConsoleColor clo = new ConsoleColor(); DayOfWeek dw = new DayOfWeek(); EmpType emp = new EmpType(); EvaluateEnum(clo); EvaluateEnum(dw); EvaluateEnum(emp); Console.ReadKey(); }
相关文章
- Android 动态设置控件获取焦点
- Pythonrandom模块(获取随机数)常用方法和使用例子
- 动态获取枚举的名称/值对
- zookeeper实现动态获取服务器列表代码示例(服务上下线监听/动态更新服务列表)
- jquery获取元素值
- uniapp 微信小程序获取当前位置 根据经纬度获取省市区
- iOS 怎样获取wifi名(无法获取wifi名)(亲测有效)
- ios弹出获取位置授权的框requestAlwaysAuthorization(oc版)
- Vue.js:Vue-Router动态路由从服务器接口获取路由数据
- 【Groovy】自定义 Xml 生成器 BuilderSupport ( nodeCompleted 方法获取节点闭合信息 )
- 【Groovy】MOP 元对象协议与元编程 ( 使用 Groovy 元编程进行函数拦截 | 动态拦截函数 | 动态获取 MetaClass 中的方法 | evaluate 方法执行Groovy脚本 )
- 【Android 逆向】Android 进程注入工具开发 ( 注入代码分析 | 获取 远程 目标进程 中的 /system/lib/libc.so 动态库中的 mmap 函数地址 )
- 【Android 安装包优化】移除无用资源 ( 自动移除无用资源 | 直接引用资源 | 动态获取资源 id | Lint 检查资源 )
- leaflet 获取使用者当前的地理位置(105)
- uniapp动态获取中间内容高度demo效果(整理)
- jq获取select控件的selected属性值
- DynaSLAM-13 DynaSLAM中RGB-D运行流程(Ⅲ):多视图几何部分Geometry.cc解析(获取参考帧、提取动态点)
- Android系统信息获取 之五:系统语言信息(续)-语言地区和简写对照表