C# Enum 类型遍历

void Main()
{
    new EnumForeach().Foreach();
}
 
public class EnumForeach
{
    public void Foreach()
    {
        foreach (Status item in Enum.GetValues(typeof(Status)))
        {
            item.ToString().Dump();
            ((int)item).Dump();
        }  
    }
}
 
public enum Status
{
    AA = 1,
    BB = 2,
    CC = 3
}

 

 开发中有时会需要遍历枚举类型,例如,我在处理一个问题时,需要将整型转换成对应的枚举类型。思路有好多,在这里说讨论几种情况的:

  1、用Switch 语句 逐个比较枚举中的类型是否和该整型相等,返回相等时的枚举类型。

  2、如上,通过遍历枚举类型,这样代码明显少了很多,优雅了不少,并且,在枚举添加值时,不需要修改这段代码。(GET)

  3、通过字典实现,也是比较麻烦,并且枚举添加值时,也要修改相应的字典内容。

posted @ 2018-07-19 14:17  沙耶  阅读(1050)  评论(0编辑  收藏  举报