実装
public enum AnimalType
{
DOG,
CAT,
BIRD,
}
Enum.GetValues(typeof(AnimalType)).Length;
enumの要素数を取得するときは、上記のコードのようにして取得することが出来ます。毎回このように書くのは面倒なので、もう少し使いやすくしていきます。
もう少し使いやすくする
実装
using System;
public class Comons
{
/// <summary>
/// 指定された列挙型の値の要素数を返します
/// </summary>
public static int GetEnumLength<T>()
{
return Enum.GetValues(typeof(T)).Length;
}
}
この実装では、ジェネリック型を使用して、型の違うenumでも簡単に要素数を取得できるようにしています。このように、クラスの関数としておけば、どこでも簡単に使えるので、とても便利になります。
使用例
int enumLength = Comons.GetGetEnumLength<AnimalType>();
<>の中に要素数を知りたいenumを入れるだけで、取得することが出来ます。