枚举本质上就是一组具名的整数常量。
enum Sect
{
HuaShan, // 默认是 0
SongShan, // 1
TaiShan, // 2
HengShan, // 3
HengShan2 // 4 (恒山)
}
// 也可以手动指定数字
enum Level
{
Low = 10,
Medium = 50,
High = 100
}
Sect mySect = Sect.HuaShan;
if (mySect == Sect.HuaShan)
{
Console.WriteLine("我是华山派的!");
}
// 转换成数字
int id = (int)mySect; // 0
if (type == 1) 是大忌,谁知道 1 是什么鬼?
if (type == EnemyType.Boss),连路边的乞丐都能看懂你的代码!这叫可读性。
定义一个枚举 Week,包含周一到周日。
尝试把 Week.Sunday 强制转换成整数,看看它是几?
enum Week
{
Monday, // 0
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday // 6
}
int day = (int)Week.Sunday;
Console.WriteLine(day); // 输出 6