java - 使用jdt获取语句节点的封闭

标签 java eclipse eclipse-jdt

我有一个方法 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++)

最佳答案

在这种情况下,iffor 括起来,即 forif 的父级。

因此,在 if 语句的 ASTNode 上,如果调用 ASTNode.getParent(),您将得到 for 语句。

关于java - 使用jdt获取语句节点的封闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34417303/

相关文章:

java - 无法解析 servlet 中的 @WebServlet ("/FileDao") 错误

python - 使用 mechanize 和 urllib 下载 pdf 文件

java - 如何在 Eclipse-Helios JDT 中专门抑制 "Comparing identical expressions"

java - 扩展 Eclipse Java 搜索

java - 错误 : JMX connector server communication error: service:jmx:rmi when stopping/shutdown Tomcat

java - map View 显示黑色区域

eclipse - 将项目导入eclipse只导入Android项目

java - Maven 无法执行目标(无法解析依赖项)

java - 如何在 ClickListener 上设置绘图线?

Java继承方法调用