java - 代码模型数组

标签 java arrays declaration sun-codemodel

我使用 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)));

但我不知道如何向数组“添加”值。

最佳答案

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}

关于java - 代码模型数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16524147/

相关文章:

c++ - 为什么编译器告诉我 vector<string> 未声明?

php - SWIG fatal error : can not redeclare class

java - getCursor() 在我的 actionListener 中不起作用

Android 数组结果显示在多个 TextView 中

java - String Primitive/String Class 区别?

c - C 中的大数组初始化问题

javascript - 从对象数组中添加新的键和值集

c++ - 在枚举中重新声明变量

java - 如何从 Java JDBC-ODBC 桥访问 UniqueIdentifier 列

java - 如何在 Android Studio 运行时更改小部件的样式