2

我使用 CodeModel 来生成 Java 代码。我期望这样的输出:

public static final String[] COLUMNS = {ID, CODE, NAME};

我试过了:

definedClass.field(JMod.PUBLIC|JMod.STATIC|JMod.FINAL, String[].class, fieldName, JExpr.newArray(codeModel.ref(String.class)));

但我不知道如何将值“添加”到数组中。

4

1 回答 1

2

JExpr.newArray() 返回 JArray,而 JArray.add() 可用于将 JExpression 实例添加到初始化程序。假设 ID、CODE 和 NAME 是本地字段的 JExpression 实例,则:

JExpr.newArray(codeModel.ref(String.class)).add(ID).add(CODE).add(NAME)

将产生:

new String[]{ID, CODE, NAME}
于 2013-06-08T01:00:39.377 回答