枚舉轉化樣本大全,數字或字串轉枚舉,本文重點舉例說明C#枚舉的用法,數字轉化為枚舉、枚舉轉化為數字及其枚舉數值的判斷,以下是具體的樣本:
字串轉換成枚舉:DayOfWeek week= (DayOfWeek)Enum.Parse(typeof(DayOfWeek), "Friday"); 數字轉換成枚舉:DayOfWeek week= (DayOfWeek)5; //Friday 具體的樣本: 定義枚舉: public enum DisplayType { All=10, Up=20, Down=30 }
1.數值轉化 (1)字元轉化為枚舉 string str="up"; DisplayType displayType; displayType=(DisplayType)System.Enum.Parse(typeof(DisplayType),str,true); Response.Write(displayType.ToString());
結果是:Up Enum.Parse 方法第3個參數,如果為 true,則忽略大小寫;否則考慮大小寫。
(2)數字轉化為枚舉 int i=30; DisplayType displayType; displayType=(DisplayType)System.Enum.Parse(typeof(DisplayType),i.ToString()); Response.Write(displayType.ToString()); 結果是:Down (3)枚舉轉化為字元 DisplayType displayType=DisplayType.Down; string str=displayType.ToString(); Response.Write(str); 結果是:Down
(4)枚舉轉化為數字 方法一: DisplayType displayType=DisplayType.Down; int i=Convert.ToInt32(displayType.ToString("d")); Response.Write(i.ToString());
或者:(int)Enum.Parse(typrof(DisplayType),"Down") 結果是:30
方法二: DisplayType displayType=DisplayType.Down; int i=((IConvertible)((System.Enum)displayType)).ToInt32(null); Response.Write(i.ToString()); 結果是:30