我有一个方法 foo(),下面有一些语句。如何从正文中获取包含语句 ASTNode
(或任何语句)?
例如我想知道如何从方法调用中获取if
,从if
语句中获取for
。
例如
public void foo()
{
for(int i=0;i<4;i++)
{
if(i==1)
System.out.println(i);
}
}
结果:
System.out.println(i) --> if(i==1)
if(i==1) --> for(int i=0;i<4;i++)
最佳答案
在这种情况下,if
被 for
括起来,即 for
是 if
的父级。
因此,在 if
语句的 ASTNode 上,如果调用 ASTNode.getParent(),您将得到 for
语句。
关于java - 使用jdt获取语句节点的封闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34417303/