[C#]Enum(列挙型)の値をループするには?

C#

どうも、ちょげ(@chogetarou)です。

enum(列挙型)の値(value)をループする方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

enum(列挙型)の値(value)をループするには、GetValues()を使います。

まず、foreachループを記述します。

foreachの変数の型にint、ループ対象にEnum.GetValues()を指定します。

Enum.GetValues()の引数で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(int value in Enum.GetValues(typeof(Names)))
        {
            Console.WriteLine(value);
        }
    }
}

/*
    出力:
    10
    16
    18
    24
    37  
*/

コメント

タイトルとURLをコピーしました