1.定義枚舉類型
public enum Test { 男 = 0, 女 = 1 }
2.獲取枚舉值
public void EnumsAction() { var s = Test.男;//男 var s2 = (int)Test.男;//0 var a = Test.男.ToString();//"男" var r = (Test)1;//女 var x = (Test)Enum.Parse(typeof(Test), "男");//男 var x2 = Enum.Parse(typeof(Test), "男");//男 var x3 = Enum.GetName(typeof(Test),0);//"男" foreach (var item in Enum.GetValues(typeof(Test))) { var v = item;//男[女] var v2 = (int)item;//0[1] var t = item.GetType();//{Name = "Test" FullName = "BaseControl.Enum.Test"} var g = item.ToString();//"男"["女"] } }
對於typeof的解釋:https://wenda.so.com/q/1365708081065503?src=150
C# typeof() 和 GetType()區是什么? 1、typeof(x)中的x,必須是具體的類名、類型名稱等,不可以是變量名稱。 2、GetType()方法繼承自Object,所以C#中任何對象都具有GetType()方法,它的作用和typeof()相同,返回Type類型的當前對象的類型。 比如有這樣一個變量i: Int32 i = new Int32(); i.GetType()返回值是Int32的類型,但是無法使用typeof(i),因為i是一個變量,如果要使用typeof(),則只能:typeof(Int32),返回的同樣是Int32的類型。