1

コード モデル APIを使用してJava ソース ファイルを生成しています。コードモデル API を介して定義された列挙型があり、それをスイッチ ブロックで使用したいと考えています。switch ステートメントでは、enum 定数を非修飾として使用する必要があります。コード モデル API が列挙型クラス名で定数を修飾するため、列挙型定数の修飾されていない名前にアクセスするのに問題があります。

つまり、codemodel API を使用して次のコード フラグメントを生成したいと考えています。

enum MyEnum {A,B};
MyEnum m = MyEnum.A;
switch (m){
   case A:
   //do something
   case B:
   //d0 something else
}

しかし、コードモデルはこのように生成します

enum MyEnum {A,B};
MyEnum m = MyEnum.A;
switch (m){
    case MyEnum.A:
    //do something
    case MyEnum.B:
    //d0 something else
 }

あなたの助けに感謝。

4

1 に答える 1

0

JExpr.ref("A")列挙型定数への直接参照を提供します。

于 2011-06-16T13:47:19.720 に答える