实现效果:

知识运用:
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();
}
原文:https://www.cnblogs.com/feiyucha/p/10349098.html