パッケージ org.opengion.fukurou.util

# クラス EnumType<T extends Comparable<T>>

java.lang.Object
org.opengion.fukurou.util.EnumType<T>

public final class EnumType<T extends Comparable<T>> extends Object
EnumType.java は、共通的に使用される 文字型選択フィールドを簡素化するクラスです。 JDK5.0 より導入された enum に類似の機能を提供しますが、内部的により特化した 機能を提供します。 具体的には、デバッグ情報の簡易出力や、文字列入力時の包含関係チェック、 デフォルト値(初期値)の登録などです。 初期値には、String,int,boolean の３タイプが指定できます。

導入されたバージョン:
  JDK5.0,

- ## コンストラクタの概要

  コンストラクタ
  コンストラクタ
  説明
  `EnumType(String title, T val)`
  タイトルと初期値を指定して構築する コンストラクター nval メソッドを使用する場合に、利用します。

- ## メソッドの概要

  修飾子とタイプ
  メソッド
  説明
  `EnumType<T>`
  `append(T key, String msg)`
  キーとその説明(メッセージ)を追加します。
  `boolean`
  `contains(T key)`
  設定した T が存在しているかどうかを返します。
  `T`
  `getDefault()`
  初期値を返します。
  `T`
  `nval(String strKey)`
  文字列相当の設定値より、対応する T オブジェクトを返します。
  `String`
  `toString()`
  内部の文字列表現を返します。

  ### クラスから継承されたメソッド java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## コンストラクタの詳細

  - ### EnumType

    public EnumType(String title, T val)
    タイトルと初期値を指定して構築する コンストラクター nval メソッドを使用する場合に、利用します。
    パラメータ:
      `title` - タイトル
      `val` - 初期値

- ## メソッドの詳細

  - ### append

    public EnumType<T> append(T key, String msg)
    キーとその説明(メッセージ)を追加します。 内部キャッシュ(Map)に追加します。 通常のメソッド名なら、put か add ですが、return に 自分自身を記述できるため、初期設定(コンストラクタ)＋値設定を 連続して記述することが出来る append メソッドにちなんで命名しています。
    パラメータ:
      `key` - キー
      `msg` - メッセージ
    戻り値:
      自分自身

  - ### nval

    public T nval(String strKey)
    文字列相当の設定値より、対応する T オブジェクトを返します。 T は、インスタンス作成時に、new EnumType<T> で指定するオブジェクトです。 引数の文字列は、 String.valueOf( T ) で得られる文字列です。 引数が、null か、長さゼロの文字列の場合は、コンストラクタで指定した 初期値が返されます。 T に Boolean や Integer を指定している場合は、アンボクシング機能により、 boolean や int に自動的にキャストされます。
    パラメータ:
      `strKey` - 文字列相当の設定値
    戻り値:
      strKeyに対応するオブジェクト
    例外:
      `IllegalArgumentException` - 引数がMapに存在しなかった場合(nullはOK)

  - ### getDefault

    public T getDefault()
    初期値を返します。 T に Boolean や Integer を指定している場合は、アンボクシング機能により、 boolean や int に自動的にキャストされます。
    戻り値:
      初期値オブジェクト

  - ### contains

    public boolean contains(T key)
    設定した T が存在しているかどうかを返します。 内部に値を取り込んだ後で使用する、存在チェックです。 通常、nval で 取り込んだ後は、チェック不要です。 引数が null の場合は、false を返します。
    パラメータ:
      `key` - T 設定した Tオブジェクト
    戻り値:
      存在する:true / 存在しない:false

  - ### toString

    public String toString()
    内部の文字列表現を返します。
    オーバーライド:
      `toString` クラス内 `Object`
    戻り値:
      内部の文字列表現
    このﾒｿｯﾄﾞは、nullを返しません