SyntaxHighlighter

2013年6月19日水曜日

【Java】列挙型 enumの定義方法

JavaのEnumにつまずいてしまった。

 typedef enum eType{ DATA_TYPE_AO = 0, DATA_TYPE_RED }

と、 C言語のように単純に、上記のような列挙型を作成して番号を取得したいだけだったが、
ダメなのか…JavaではEnumの概念が変わるらしい…

という事で、「新規作成」→「列挙型」を作成する(あるんだ!)
これも面倒だと思ったが、こっちのが便利!欲しいモノをいくらでも足せる(笑)

【dataType.Java】
------------------------------------------------------------
public enum dataType {

DATA_TYPE_AO  {
   @Override public int getPos() {return 0; }
   @Override public String getName() {return "青"; }
},
DATA_TYPE_RED  {
   @Override public int getPos() {return 1; }
   @Override public String getName() {return "赤"; }
};

public abstract int getPos(); // 番号取得
public abstract String getName(); // 名前取得
}
------------------------------------------------------------

という列挙型を作ってみました。

使用方法は、
------------------------------------------------------------
dataType  type = dataType.DATA_TYPE_AO  ;
int no = type.getPos();
------------------------------------------------------------

no  = 0 となる

ちなみに、定義のみて使いたい場合は以下で使える。
enum eType{ DATA_TYPE_AO, DATA_TYPE_RED }




0 件のコメント:

コメントを投稿