Java 列挙型(enum型)のサンプル

Javaの列挙型のサンプルです。

目次

列挙型(enum型)

・複数の定数を持つことができます。
・Enumクラスを暗黙的に継承しています。→Enumクラスのメソッドが使えます。
・以下はJava8 API仕様のEnumクラスのリンクです。
 https://docs.oracle.com/javase/jp/8/docs/api/java/lang/Enum.html

コード

enum型のサンプルです。
6~8行目は、enum型を定義しています。名前をカンマ区切りで記述します。
16行目は、valuesメソッドですべての定数を取得しています。
18行目は、toStringメソッドで定数の名前を取得しています。
19行目は、ordinalメソッドで位置を取得しています。位置は0から始まります。

package test1;
/**
 * 列挙型(enum)のサンプル
 */
enum colors {
	RED,
	YELLOW,
	BLUE
}
public class Test1 {
	public static void main(String[] args) {
		
		System.out.println(colors.RED); // RED
		
		//valuesメソッドですべての定数を取得
		for (colors t : colors.values()) {
			//toStringメソッドで定数の名前を取得
			System.out.println(t.toString()); // RED YELLOW BLUE
			System.out.println(t.ordinal()); // 0 1 2
		}
	}
}

Enumの定数に数値や文字列を設定して取得するサンプル

Enumの定数に数値や文字列を設定して取得する方法です。
6-8行目は、定数の後に数値と文字列を定義しています。
10,11行目は、定数の後に定義した数値と文字列を宣言しています。
13行目はコンストラクタです。
18,21行目は定数の後の数値と文字列を取得するためのメソッドです。
28-34行目は定数の後の数値と文字列を取得しています。

package test1;
/**
 * 列挙型のサンプル
 */
enum colors {
	RED(0,"R"),
	YELLOW(1,"Y"),
	BLUE(2,"B");
	
	private int num1;
	private String name1;
	
	private colors(int num,String name){
		this.num1 = num;
		this.name1 = name;
	}

	public int getNum1(){
		return num1;
	}	
	public String getName1(){
		return name1;
	}
}
public class Test1 {
	public static void main(String[] args) {

		System.out.println(colors.RED.getNum1()); // 0
		System.out.println(colors.YELLOW.getNum1()); // 1
		System.out.println(colors.BLUE.getNum1()); // 2
		
		System.out.println(colors.RED.getName1()); // R
		System.out.println(colors.YELLOW.getName1()); // Y		
		System.out.println(colors.BLUE.getName1()); // B
	}
}



△上に戻る