【问题标题】:Java JDT visitor detecting loopsJava JDT 访问者检测循环
【发布时间】:2014-11-07 16:23:50
【问题描述】:

我正在使用 Java JDT 运行源代码,并使用访问者模式来检测变量、方法等不同的项目。

但是我不确定循环是如何定义的,例如:

for(int i = 0; i i < a.size();i++){

while(i<10)

我需要的方法看起来像

public boolean visit(XXXXXXX node) {
    System.out.println(node);
    return false;
}

其中 XXXXXXX 是 Java JDT 中的内容。

【问题讨论】:

    标签: java eclipse-jdt


    【解决方案1】:

    如果您指的是 AST 访问者,那么:

    for(int i = 0; i i < a.size();i++) {
    }
    

    带有变量的 for 循环由类型 ForStatement 表示。

    for (String s : array) {
    }
    

    数组上的 for 循环由 EnhancedForStatement 类型表示。

    while(i<10) {
    }
    

    如果由 WhileStatement 类型表示,则为 while 循环。

    分析代码的好工具是 ASTView。它可以向您显示编辑器中标记的任何代码的 AST。您可以从更新站点 http://www.eclipse.org/jdt/ui/update-site 将其安装到 Eclipse 中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-17
      • 1970-01-01
      • 2018-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-03
      • 1970-01-01
      相关资源
      最近更新 更多