關鍵代碼
得到枚舉值
1 Color.Red.GetHashCode();
得到枚舉名稱
1 Color.Red.ToString();
枚舉類型轉換代碼
1 Enum.Parse(typeof(Color),str)
示例數據
首先創建示例數據,如下:
1 //…… 2 /// <summary> 3 /// 顏色枚舉 4 /// </summary> 5 public enum Color 6 { 7 Red, //紅色 8 Blue, //藍色 9 Green //綠色 10 } 11 //……
枚舉值轉字符串
1 int hashCode = Color.Red.GetHashCode(); 2 string enumParseStr = Enum.Parse(typeof(Color), hashCode.ToString()).ToString();
Enum.Parse()得到的值是object類型的,我們要轉換的是值,得到的是名稱,因此用ToString()得到字符串類型的名稱。
字符串轉枚舉值
1 string str = Color.Red.ToString(); 2 int enumParseInt = Convert.ToInt32(Enum.Parse(typeof(Color), str));
這里要轉換的是名字,得到的是值,因此用Convert.ToInt32()得到該值。
Enum說明
- 默認枚舉第1個值為0,然后依次加1。
- 指定枚舉前1個枚舉,它后面的值會從它開始依次加1。
- 可以無序定義枚舉值。
參考網址
[1] https://www.cnblogs.com/knightluffy/p/3529230.html