C# 枚舉常用方法淺析
C# 枚舉常用方法對于C# 枚舉的學(xué)習(xí)十分重要,那么我們現(xiàn)在來看看什么是C# 枚舉常用方法:
C# 枚舉常用方法<1>獲取枚舉字符串
- TimeOfDay time = TimeOfDay.Afternoon;
- Console.WriteLine(time.ToString());//輸出:Afternoon
C# 枚舉常用方法<2>Enum.Parse()方法
這個方法帶3個參數(shù),第一個參數(shù)是要使用的枚舉類型。其語法是關(guān)鍵字typeof后跟放在括號中的枚舉類名。typeof運算符將在第5章詳細論述。第二個參數(shù)是要轉(zhuǎn)換的字符串,第三個參數(shù)是一個bool,指定在進行轉(zhuǎn)換時是否忽略大小寫。最后,注意Enum.Parse()方法實際上返回一個對象引用—— 我們需要把這個字符串顯式轉(zhuǎn)換為需要的枚舉類型(這是一個取消裝箱操作的例子)。對于上面的代碼,將返回1,作為一個對象,對應(yīng)于TimeOfDay.Afternoon的枚舉值。在顯式轉(zhuǎn)換為int時,會再次生成1。
- TimeOfDay time2 = (TimeOfDay)
- Enum.Parse(typeof(TimeOfDay), "afternoon", true);
- Console.WriteLine((int)time2);//輸出1
C# 枚舉常用方法<3>得到枚舉的某一值對應(yīng)的名稱
- lbOne.Text = Enum.GetName(typeof(TimeOfDay), 0);
- lbOne.Text = ((TimeOfDay)0).ToString();//返回:Morning
兩種方法都能實現(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# 枚舉常用方法的基本情況就向你介紹到這里,希望對你了解和學(xué)習(xí)C# 枚舉有所幫助。
【編輯推薦】