2

我想在源代码中获取方法的最后一行。例如:

line 17. public void method1(){
line 18.   statement1;
line 19.   statement2;
line 20.   statement3;
line 21. }

我知道如何使用以下代码获取方法的起始位置:

compilationUnit.getLineNumber(method.getStartPosition())

这将返回数字 17,现在我想获取方法的最后一行,在本例中是数字 21。是否有任何命令可以得到这个?

4

3 回答 3

1

可能,您必须将 method.getLength() 添加到 method.getStartPosition(),然后使用 compilerUnit 计算行号。

compilationUnit.getLineNumber(method.getStartPosition() + method.getLength())
于 2013-06-04T09:59:16.417 回答
0

您可以逐步将长度分配给起始位置:

int methodLength = method.getLength();
compilationUnit.getLineNumber(method.getStartPosition() + methodLength);
于 2013-06-04T10:00:02.147 回答
0

您可以尝试 ATSNode 类的 getLength()。我不喜欢 Eclipse 的 SDK,但查看 Javadocs 对我来说很有意义。

于 2013-06-04T10:07:34.277 回答