列挙型(Enum)の概要

Java の入出力とストリーム

Alex Liu

Software Development Engineer

Enum を使う理由

  • Enum は固定の値集合を定義します
    • 例: 曜日、ステータスコード
  • 可読性と保守性が向上します
  • 変数への無効な値を防ぎます
  • 注意: Enum は Java 標準ライブラリの一部のため import は不要です
Java の入出力とストリーム

Enum の定義

  • enum キーワードで Enum を宣言
    enum Day {
      MONDAY, 
      TUESDAY, 
      WEDNESDAY, 
      THURSDAY, 
      FRIDAY, 
      SATURDAY, 
      SUNDAY;
    }
    
  • 各値は定数で、大文字で記述します
Java の入出力とストリーム

プログラムでの Enum 利用

  • 例: Enum の代入と出力
    public class EnumExample {
      public static void main(String[] args) {
          Day today = Day.WEDNESDAY; // Enum 値を代入
          System.out.println("Today is: " + today);
      }
    }
    
  • 出力:
    Today is: WEDNESDAY
    
Java の入出力とストリーム

Enum の値をループ

  • .values() で Enum の全値を取得
  • .ordinal() で要素の位置を取得
  • 先ほど定義した Day Enum を再利用:
    for (Day d : Day.values()) {
      System.out.println(d);
      System.out.print(
      " is at index " + d.ordinal());
    }
    
  • このプログラムは Enum に定義された全値を出力します:
    MONDAY is at index 0
    TUESDAY is at index 1
    WEDNESDAY is at index 2
    THURSDAY is at index 3
    FRIDAY is at index 4
    SATURDAY is at index 5
    SUNDAY is at index 6
    
Java の入出力とストリーム

メソッド付きの Enum

  • Enum には機能拡張のためのメソッドを定義できます
enum Status {
    SUCCESS("Operation successful"),
    ERROR("An error occurred");

    private String message;
    Status(String message) {
        this.message = message;
    }
    public String getMessage() {
        return message;
    }
}
Java の入出力とストリーム

メソッド付きの Enum

  • Status という Enum の使用例
public class EnumMethodExample {
    public static void main(String[] args) {
        Status current = Status.SUCCESS;
        System.out.println("Status: " + current);
        System.out.println("Message: " + current.getMessage());
    }
}
  • 出力:
Status: SUCCESS
Message: Operation successful
Java の入出力とストリーム

演習に進みましょう!

Java の入出力とストリーム

Preparing Video For Download...