0
0

More than 1 year has passed since last update.

Java enum型とは

Posted at

PHPerがJavaを触る機会をいただけたので備忘録として

enum型(列挙型)とは

複数の定数を一つのクラスとしてまとめておくことができる型。

enum型はクラスとして定義されるので、フィールドやメソッドも定義できる点が大きな特徴。
enumのインスタンス化は、enum内部で行う1回のみ。
これにより、enumの各インスタンスは、プログラムの中で1つであることが保証される。
なので、enumは定数として利用できる。

基本の書式

enumTest.java
public enum enum型名 {
  定数1,
  定数2,
  定数3
}

初期値に数字や文字列の値を定義する場合は、以下のようにフィールドやコンストラクタの定義を行う。

数値の値を定義する場合

enumSports.java
public enum Sports {
  BaseBall(0),
  Tennis(1),
  HandBall(2),

  private int id; //フィールドを定義
  
  private Sports(int id) {
    this.id = id;
  }//コンストラクタの定義
}

文字列の値を定義する場合

enumFoods.java
public enum Foods {
  Potato("Hokkaido"),
  Tomato("Kumamoto"),
  Spinach("Chiba"),

  private String prefecture; //フィールドを定義
  
  private Foods(String prefecture) {
    this.prefecture = prefecture;
  }//コンストラクタの定義
}

enum型を使用する際は、クラスのメソッドのように、enum型名.定義名と記載する

Javaのenumを使いたい場合

  • 定数の種類・数を明確にしたい時
  • 戻り値を明確化してプログラムの安全性・確実性を高めたい時
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0