码迷,mamicode.com
首页 > 编程语言 > 详细

C# 如何快速取到enum中的枚举数量

时间:2017-10-10 17:49:36      阅读:283      评论:0      收藏:0      [点我收藏+]

标签:循环   debug   eof   for   插入   type   i++   typeof   logs   

前一阵写一个代码,得取enum中的数量做循环比较,写的很坑爹,但是好用。最近又看了一个方法,真他妈机智。

方法一

用映射来取得enum中的值

public enum enums
{
    a,
    b,
    c,
}

public static void GetEnumCount()
{
    foreach (enums e in Enum.GetValues(typeof(enums)))
    {
        Debug.Log(e);
    }
}

方法二

在结尾插入一个表示结束的枚举,来取得大小,这样就避免了映射的GC开销,很精巧的方法。

public enum enums
{
    a,
    b,
    c,
    End,
}
public static void GetEnumCount()
{
    for (int i = 0; i < (int)enums.End; i++)
    {
        Debug.Log((enums)i);
    }
}

 

C# 如何快速取到enum中的枚举数量

标签:循环   debug   eof   for   插入   type   i++   typeof   logs   

原文地址:http://www.cnblogs.com/SHOR/p/7646770.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!