實現效果:
知識運用:
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(); }