列舉為一組邏輯相關的整數常數提供具名符號,提升程式可讀性與維護性。
enum WeekDay {
Sunday, Monday, Tuesday, Wednesday,
Thursday, Friday, Saturday
}
WeekDay day;
day = WeekDay.Tuesday;)。int,首項值 0,後續遞增 1。byte, sbyte, short, ushort, int, uint, long, ulong。enum WeekDay : byte {
Sunday = 1, Monday, Tuesday, Wednesday,
Thursday, Friday, Saturday
}
| 特性 | 列舉 | 結構 |
|---|---|---|
| 成員型別 | 皆為同一整數型別 | 可混合不同型別 |
| 值的組合 | 單一值 | 多欄位組合 |
| 位元運算 | 支援(搭配 Flags) | 不直接支援 |
[Flags]
enum FileAccess {
Read = 1, // 0001
Write = 2, // 0010
Execute = 4 // 0100
}
FileAccess access = FileAccess.Read | FileAccess.Write; // 3
Enum.GetNames(typeof(WeekDay)):取得所有成員名稱陣列。Enum.GetValues(typeof(WeekDay)):取得所有成員值陣列。Enum.TryParse:安全解析字串為列舉值。