どうも、ちょげ(@chogetarou)です。
Enum(列挙型)のメンバーをループする方法を紹介します。
方法

Enum(列挙型)のメンバーをループする方法は、2つあります。
Enum.GetNames()
1つは、Enum.GetNames()を使う方法です。
まず、foreachループを記述します。
foreachループのループ対象にEnum.GetNames()を指定します。
Enum.GetNames()の引数でtypeof()を呼び出し、typeof()の引数に列挙型を指定します。
そして、foreachのループ処理を記述します。
ループ処理内では、ループ変数でEnumのメンバーを文字列として取得できます。
foreach(string value in Enum.GetNames(typeof(Names)))
{
//ループ処理
}
上記のforeachループは、Enumのメンバーを文字列としてループします。
使用例
using System;
using System.Collections.Generic;
public class Example
{
public enum Names
{
Taro = 18,
Ryoma = 37,
Kazuma = 16,
Keiko = 24,
Megumi = 10,
}
public static void Main()
{
foreach(string value in Enum.GetNames(typeof(Names)))
{
Console.WriteLine(value);
}
}
}
/*
出力:
Megumi
Kazuma
Taro
Keiko
Ryoma
*/
Enum.Values()
もう1つは、Enum.Values()を使う方法です。
まず、foreachループを記述します。
foreachループのループ対象にEnum.Values()を指定します。
Enum.Values()の引数でtypeof()を呼び出し、typeof()の引数に列挙型を指定します。
そして、foreachループのループ処理を記述します。
foreachループの処理では、ループ変数でEnumのメンバーを取得できます。
foreach(var value in Enum.GetValues(typeof(Names)))
{
//処理
}
使用例
using System;
using System.Collections.Generic;
public class Example
{
public enum Names
{
Taro = 18,
Ryoma = 37,
Kazuma = 16,
Keiko = 24,
Megumi = 10,
}
public static void Main()
{
foreach(var value in Enum.GetValues(typeof(Names)))
{
Console.WriteLine(value);
}
}
}
/*
出力:
Megumi
Kazuma
Taro
Keiko
Ryoma
*/
まとめ
Enum(列挙型)のメンバーをループする方法は、次の2つです。
- Enum.GetNames()を使う方法
- Enum.GetValues()を使う方法
コメント