首页 / C#开发 / 正文

C#/.NET应用程序编程开发中如何获取一个枚举中定义的枚举值个数?

1495 1 发布于: 2019-06-20 读完约需3分钟

问题描述

如题,在C#/.NET应用程序编程开发中,如何获取一个枚举中定义的枚举值个数?

比如当前有如下的枚举:

public enum WeekDays
{
    Monday = 1,
    Tuesday = 2,
    Wednesday = 3,
    Thursday = 4,
    Friday = 5,
    Saturday = 6,
    SunDay = 0
}

不用程序就能看出来,WeekDays的枚举值个数为7个,那么如何使用C#读取这一数值呢?

方案一

在C#/.NET应用程序编程开发中,并没有可以类似Enum.Lenght这个的直接读取枚举值个数的方法,那么我们需要绕个弯来直接读取。这里可以使用枚举的GetNames()方法,如下(完整示例):

using System;
using System.Collections.Generic;
using System.Linq;

public class Program
{
  public enum WeekDays
  {
    Monday = 1,
    Tuesday = 2,
    Wednesday = 3,
    Thursday = 4,
    Friday = 5,
    Saturday = 6,
    SunDay = 0
  }
  public static void Main()
  {
    var len = GetEnumLength();
    Console.WriteLine("Length of WeekDays:{0}",len);
  }

  private static int GetEnumLength()
  {
    var len = Enum.GetNames(typeof(WeekDays)).Length;
    return len;
  }
}

输出结果为:

Length of WeekDays:7

温馨提示:本文标注有(完整示例)的示例代码可以直接粘贴在try.dot.net中运行。

版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。

上一篇: C#/.NET应用程序编程开发中如何读取当前计算机的CPU内核数量?

下一篇: C#/.NET应用程序编程开发中在不使用循环语句的情况下如何实现复制一个集合到另一个集合?

本文永久链接码友网 » C#/.NET应用程序编程开发中如何获取一个枚举中定义的枚举值个数?

分享扩散:

发表评论

登录用户才能发表评论, 请 登 录 或者 注册