使用枚举的场景很多,最典型的例子是用枚举状态码。实际的业务系统中,往往会根据业务需要定义很多状态码,用来标识某个业务流程的处理进度,对于复杂的业务流程来说,涉及到的业务状态码很多,如果都用数字去硬编码,可读性很差,枚举帮助我们解决了这个问题,它可以友好的代替一堆的状态码,是业务逻辑层和DB层的友好桥梁。
示例:
public enum Weekday
{
Monday = 1,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
}
说明:
一、枚举值默认是无符号uint类型,在不赋任何初始值的时候,枚举依次为0,1,2...。当给第一项枚举项赋值时,以后的枚举项按顺序加1,例如:
Weekday第一项(Monday) 的值自定义为1,那么Tuesday,Wednesday...Sunday 的值依次为2,3,4,5,6,7.
二、枚举的遍历
foreach (Weekday val in Enum.GetValues(typeof(Weekday)))
{
Console.WriteLine(val);
}