【C#】列挙型(enum)の使い方

列挙型とは

列挙型とは、コンピュータプログラミングにおいて、プログラマが選んだ各々の識別子(列挙子)をそのまま有限集合として持つ抽象データ型である(Wikipediaより)。

データ型の1つで複数の異なる定数を1つの集合として定義するものです。

 

enumとは

enumとは、列挙型という意味です。

C#ではこのenumキーワードを使用することで、列挙型として定義することができます。

 

サンプルコード

using System;

namespace Sample
{
    enum CarMaker
    {
        TOYOTA,
        NISSAN,
        DAIHATSU,
        MATSUDA,
        HONDA
    }

    enum FoodMaker
    {
        明治,
        味の素,
        日清食品,
        キッコーマン,
    }

    class Sample
    {
        static void Main()
        {
          // GetNamesメソッドを使ってenumの名前(CarMaker)の配列を返す
            foreach (string car in Enum.GetNames(typeof(CarMaker)))
            {
                Console.WriteLine(car);
            }

            Console.WriteLine("------------");

          // GetNamesメソッドを使ってenumの名前(FoodMaker)の配列を返す
            foreach (string food in Enum.GetNames(typeof(FoodMaker)))
            {
                Console.WriteLine(food);
            }

             Console.ReadKey();
        }
    }
}

実行結果:
TOYOTA
NISSAN
DAIHATSU
MATSUDA
HONDA
————
明治
味の素
日清食品
キッコーマン

上記のように、実際の開発現場ではforeachを使用して、enumの値や名前を取得することが多いです。

 

参考

■公式ドキュメント
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/builtin-types/enum

 

おすすめ書籍

■C#を学習し始めた方向け
やさしいC 第3版 (「やさしい」シリーズ)

1週間でCの基礎が学べる本

確かな力が身につくC「超」入門 第2版 (Informatics&IDEA)