一、枚舉類型的概念
枚舉類型聲明為一組相關的符號常數定義了一個類型名稱。枚舉用于"多項選擇"場合,就是程序運行時從編譯時已經設定的固定數目的“選擇”中做出決定。
枚舉類型(也稱為枚舉)為定義一組可以賦給變量的命名整數常量提供了一種有效的方法。例如,假設您必須定義一個變量,該變量的值表示一周中的一天。該變量只能存儲七個有意義的值。若要定義這些值,可以使用枚舉類型。枚舉類型是使用 enum 關鍵字聲明的。 ?比如:enum Weeks { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday };
二、枚舉的優點
1、枚舉可以使代碼更易于維護,有助于確保給變量指定合法的、期望的值。
2、枚舉使代碼更清晰,允許用描述性的名稱表示整數值,而不是用含義模糊的數來表示。
3、枚舉使代碼更易于鍵入。在給枚舉類型的實例賦值時,VS.NET IDE會通過IntelliSense彈出一個包含可接受值的列表框,減少了按鍵次數,并能夠讓我們回憶起可能的值
三、枚舉的幾點說明
1、默認情況下,枚舉中每個元素的基礎類型是 int。可以使用: 指定另一種整數值類型。
2、如果不給枚舉列表的元素指定值,它們默認以0開始,依次遞增 +1。比如:Sunday 為0 , Monday 為 1,當然也可以指定值比如 enum Country{中國=2,香港=4,美國=6};
3、枚舉和結構一樣屬于值類型。
4、枚舉只有一種類型成員:命名的整數值常量。
四、枚舉的用法示例
1、聲明
public enum TimeOfDay
{
Moning = 0,
Afternoon = 1,
Evening = 2,
};
//獲取枚舉字符串
TimeOfDay time = TimeOfDay.Afternoon;
Console.WriteLine(time.ToString());//輸出:Afternoon
//根據字符串獲取對應的枚舉值
TimeOfDay time2 = (TimeOfDay) Enum.Parse(typeof(TimeOfDay), "Afternoon", true);
Console.WriteLine((int)time2);//輸出1
// 根據值獲取對應的名稱
string str = Enum.GetName(typeof(TimeOfDay), 0);//str 值為Morning
//遍歷獲取所有的枚舉值
string str="";
foreach (int item in Enum.GetValues(typeof(TimeOfDay)))
{
str += item.ToString();
}
//遍歷獲取所有的枚舉名稱
string strName="";
foreach (int item in Enum.GetNames(typeof(TimeOfDay)))
{
strName += item.ToString();
}
歡迎關注我的公眾號(同步更新文章):DoNet技術分享平臺
閱讀原文