是否有可能使用 AST Parser 获得完整的行方法?

is it possible to get full line method uisng AST Parser?

我想问一下,是否可以在 java 文件中使用 AST Parser 获取完整行方法?

示例:

public double getAverage(int[] data) {
}

我只使用 MethodDeclaration 获取方法名称 (getAverage),而我希望完整行 (public double getAverage(int[] data) {

第二个问题,如何读取关闭方法(})?

谢谢:)

没有直接的方法,但您可以获取所有必需的信息并自行构建字符串。

您可以使用 MethodDeclaration.getModifiers() 来获取修饰符信息,它将告诉您它是 public 还是私有的。

您可以使用 MethodDeclaration.getReturnType2().resolveBinding().getName() 获取 return 类型的名称

MethodDeclaration.parameters()将为您提供有关参数的信息。

还有一个技巧是: 字符串签名= MethodDeclaration.toString().split("{")[0];

但这可能不是一种有效的方法。

谢谢