我建立了FieldDeclarations的列表,需要找出每个字段的名称是什么:
List<FieldDeclaration> fields = classDeclaration.getFields();
for (FieldDeclaration field : fields)
{
String fieldName = field.get...?
}
我找不到任何检索字段名称的方法。
但是奇怪的是,其中一个构造函数确实接受了字段参数,因此不确定为什么它没有吸气剂。我是否需要从另一个节点获取它?
FieldDeclaration(NodeList修饰符,类型,字符串名称)
创建一个FieldDeclaration。
https://www.javadoc.io/doc/com.github.javaparser/javaparser-core/3.15.1
最佳答案
您提到的构造函数就是这样声明的
public FieldDeclaration(NodeList<Modifier> modifiers, Type type, String name) {
this(assertNotNull(modifiers), new VariableDeclarator(type, assertNotNull(name)));
}
在
FieldDeclaration
的源代码中,有一个VariableDeclarator
的节点列表,如下所示;@NonEmptyProperty
private NodeList<VariableDeclarator> variables;
您可以通过以下方法获取此私有列表;
public NodeList<VariableDeclarator> getVariables() {
return variables;
}
一旦获得列表,就应该使用
VariableDeclarator
类方法,如果您看一下它的源代码,则该方法应该可以使用。@Generated("com.github.javaparser.generator.core.node.PropertyGenerator")
public SimpleName getName() {
return name;
}
编辑
您可以访问源代码here