C# 枚舉常用方法淺析
C# 枚舉常用方法對(duì)于C# 枚舉的學(xué)習(xí)十分重要,那么我們現(xiàn)在來(lái)看看什么是C# 枚舉常用方法:
C# 枚舉常用方法<1>獲取枚舉字符串
- TimeOfDay time = TimeOfDay.Afternoon;
- Console.WriteLine(time.ToString());//輸出:Afternoon
C# 枚舉常用方法<2>Enum.Parse()方法
這個(gè)方法帶3個(gè)參數(shù),第一個(gè)參數(shù)是要使用的枚舉類型。其語(yǔ)法是關(guān)鍵字typeof后跟放在括號(hào)中的枚舉類名。typeof運(yùn)算符將在第5章詳細(xì)論述。第二個(gè)參數(shù)是要轉(zhuǎn)換的字符串,第三個(gè)參數(shù)是一個(gè)bool,指定在進(jìn)行轉(zhuǎn)換時(shí)是否忽略大小寫。最后,注意Enum.Parse()方法實(shí)際上返回一個(gè)對(duì)象引用—— 我們需要把這個(gè)字符串顯式轉(zhuǎn)換為需要的枚舉類型(這是一個(gè)取消裝箱操作的例子)。對(duì)于上面的代碼,將返回1,作為一個(gè)對(duì)象,對(duì)應(yīng)于TimeOfDay.Afternoon的枚舉值。在顯式轉(zhuǎn)換為int時(shí),會(huì)再次生成1。
- TimeOfDay time2 = (TimeOfDay)
- Enum.Parse(typeof(TimeOfDay), "afternoon", true);
- Console.WriteLine((int)time2);//輸出1
C# 枚舉常用方法<3>得到枚舉的某一值對(duì)應(yīng)的名稱
- lbOne.Text = Enum.GetName(typeof(TimeOfDay), 0);
- lbOne.Text = ((TimeOfDay)0).ToString();//返回:Morning
兩種方法都能實(shí)現(xiàn),但是當(dāng)其值越界(不是枚舉所列出的值),就有一定的區(qū)別了。大家可以根據(jù)自己的需求不同,選擇合適的方法。
- lbCon.Text = ((TimeOfDay)5).ToString();
- //返回:5,如果越界返回原值
- this.lbGetName.Text = Enum.GetName(typeof(TimeOfDay), 5);
- //返回:空字符串,如果越界返回空字符串
C# 枚舉常用方法<4>得到枚舉的所有的值
- foreach (int i in Enum.GetValues(typeof(TimeOfDay)))
- lbValues.Text += i.ToString();
C# 枚舉常用方法<5>枚舉所有的名稱
- foreach(string temp in Enum.GetNames(typeof(TimeOfDay)))
- lbNames.Text+=temp;
C# 枚舉常用方法的基本情況就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)C# 枚舉有所幫助。
【編輯推薦】