JavaSE 5.0 では列挙型のサポートが追加されました。列挙型の使用方法については詳しく説明しません。つまり、プログラムの他の部分で使用するために列挙型で定数を定義できます。
Java の組み込み列挙型は、1、2、を意味する列挙名の定義のみを提供します。 。対応する実際の値を待ちます。
org.apache.commons.lang.enums パッケージの ValuedEnum タイプを使用して、このクラスを拡張することで、より強力な機能を提供できます。名前が示すように、ValuedEnum---- は名前付き列挙です。このクラスは、列挙の定数にアクセスするための getEnumMap、getEnumList、interator などのメソッドを自由に定義できます。クラス。 。以下にその例を示します。
java.util.Iteratorをインポートします。
java.util.Listをインポートします。
java.util.Mapをインポートします。
org.apache.commons.lang.enums.ValuedEnum をインポートします。
public Final class WeekDayEnum extends ValuedEnum{
/**
*
*/
パブリック静的最終ロングシリアルバージョンUID = 732377557389126868L;
プライベート静的最終整数 MONDAY=1;
プライベート静的最終整数TUESDAY=2;
プライベート静的最終整数WEDSDAY=3;
プライベート静的最終整数THURSDAY = 4;
プライベート静的最終整数 FRIDAY=5;
プライベート静的最終整数SATDAY=6;
プライベート静的最終整数日曜日 = 7;
public static Final WeekDayEnum WEEKDAY_MONDAY_ENUM = new WeekDayEnum("Monday",MONDAY);
public static Final WeekDayEnum WEEKDAY_TUESDAY_ENUM = new WeekDayEnum("火曜日",TUESDAY);
public static Final WeekDayEnum WEEKDAY_WEDSDAY_ENUM = new WeekDayEnum("水曜日",WEDSDAY);
public static Final WeekDayEnum WEEKDAY_THURSDAY_ENUM = new WeekDayEnum("木曜日",THURSDAY);
public static Final WeekDayEnum WEEKDAY_FRIDAY_ENUM = new WeekDayEnum("Friday",FRIDAY);
public static Final WeekDayEnum WEEKDAY_SATDAY_ENUM = new WeekDayEnum("Saturday",SATDAY);
public static Final WeekDayEnum WEEKDAY_SUNDAY_ENUM = new WeekDayEnum("Sunday",SUNDAY);
protected WeekDayEnum(文字列名, int 値) {
super(名前, 値);
}
public static WeekDayEnum getEnum(String 型){
return (WeekDayEnum)getEnum(WeekDayEnum.class, type);
}
public static WeekDayEnum getEnum(int 型){
return (WeekDayEnum)getEnum(WeekDayEnum.class, type);
}
パブリック静的マップ getEnumMap(){
getEnumMap(WeekDayEnum.class) を返します。
}
パブリック静的リスト getEnumList(){
getEnumList(WeekDayEnum.class) を返します。
}
public static イテレータ iterator(){
戻りイテレータ();
}
ドライバー クラスのメソッドを自由に呼び出して、必要な結果を取得できます。
例: WeekDayEnum.WEEKDAY_MONDAY_ENUM は列挙値にアクセスします。
WeekDayEnum.getEnumList は、列挙型クラスによって定義された定数のコレクションを返すこともできます。
そして、WeekDayEnum.getEnumMap などを通じて Map キーと値のペアのコレクションを返します。