我使用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中的东西。
答案 0 :(得分:0)
如果您指的是AST访问者,那么:
for(int i = 0; i i < a.size();i++) {
}
带有变量的for循环由类型ForStatement
表示。
for (String s : array) {
}
数组上的for循环由类型EnhancedForStatement
表示。
while(i<10) {
}
while循环,如果由WhileStatement
类型表示。
分析代码的一个很棒的工具是ASTView。它可以显示编辑器中标记的任何代码的AST。您可以从更新站点http://www.eclipse.org/jdt/ui/update-site
将其安装到Eclipse中