C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#の列挙型(Enum)とは?基本的な使い方をサンプルコードで解説

C#における列挙型(Enum)は、年、製品名、月、季節など、関連する一連の名前付き定数をひとまとめにして格納するためのデータ型です。

列挙型の各定数にはデフォルトで整数値が割り当てられ、最初の要素は 0 から始まり、以降は順に 1 ずつ増加していきます。列挙型は定数の集合が固定されているため、ループ処理などで簡単に走査できるのも大きな特徴です。

列挙型の定義例

たとえば、車種を表す列挙型は次のように定義できます。

public enum Vehicle { Car, Bus, Truck }

この場合、Car = 0Bus = 1Truck = 2 という整数値が自動的に割り当てられます。

サンプルプログラム

以下は、列挙型の各メンバーを int 型にキャストして値を表示する完全なサンプルコードです。

using System;
public class Demo {
    public enum Vehicle { Car, Bus, Truck }
    public static void Main() {
        int a = (int)Vehicle.Car;
        int b = (int)Vehicle.Bus;
        int c = (int)Vehicle.Truck;
        Console.WriteLine("Car = {0}", a);
        Console.WriteLine("Bus = {0}", b);
        Console.WriteLine("Truck = {0}", c);
    }
}

実行結果

Car = 0
Bus = 1
Truck = 2

補足:開始値を変更したい場合

デフォルトでは 0 から始まりますが、明示的に値を指定することで開始番号を変更することも可能です。

public enum Vehicle { Car = 10, Bus, Truck }

このように定義すると、Car = 10Bus = 11Truck = 12 となります。列挙型を使うことで、マジックナンバーを避け、コードの可読性と保守性を高めることができます。

  1. C#の列挙型(Enum)とは?基本的な使い方をサンプルコード付きで解説

    C#における列挙型(Enum:Enumeration)は、曜日、月、季節、製品カテゴリなど、関連する一連の名前付き定数をひとつのグループとして格納するためのデータ型です。Enumの定数にはデフォルトで0から始まる整数値が自動的に割り当てられ、宣言された順番に1ずつ増加していきます。定数のセットは固定されており、ループ処理などで簡単に走査(トラバース)できるのも大きな特徴です。Enumの基本的な特徴関連する名前付き定数をひとまとめに管理できる最初の定数にはデフォルトで「0」が割り当てられ、以降は1ずつ増加する値は明示的に変更することも可能型安全性が高く、無効な値の代入をコンパイル時に防げるEnu

  2. Javaの列挙型(Enum)はインターフェースを実装できる?実装方法とサンプルコードを解説

    はい、JavaのEnum(列挙型)はインターフェースを実装できます。これは、オブジェクトやクラスが持つ識別的な属性と密接に結びついたビジネスロジックを実装したい場合に、特に有用な手法です。EnumはJava 1.5で導入された特殊なデータ型です。Enumの各定数は、デフォルトでstaticかつfinalとして扱われるため、定数名は慣例として大文字で記述します。Enumでインターフェースを実装するメリットEnumにインターフェースを実装させると、各定数ごとに異なる振る舞いを持たせることができます。例えば「演算の種類」というEnumに対して、それぞれの定数(ADD、SUBTRACTなど)が独自の計