gpt4 book ai didi

java - 如何使用 JDT-AST 提取已知行中的条件?

转载 作者:太空宇宙 更新时间:2023-11-04 12:51:25 25 4
gpt4 key购买 nike

我有一个这样的方法:

public static int calc(int a, int b) {
if (a >= b)
return a - b;
return 0;
}

我想知道在已知行号上使用的条件。在本例中,我的预期结果是条件的名称,例如“">=”。

我知道如何解析给定 ICompilationUnitCompilationUnit。但我怎样才能获得条件呢?

最佳答案

为此,您必须创建一个 ASTVisitor 它将访问所有中缀表达式。在访问者类中,访问方法将具有以下内容:

@Override
public boolean visit(InfixExpression node) {
Operator op= node.getOperator();
if(op.equals(Operator.GREATER) || op.equals(Operator.EQUALS) || ....)
conditionalInfixExpressionList.add(node);
return super.visit(node);
}

visit 方法内的 if 语句中,您必须检查中缀表达式是否是条件变量,并将其添加到列表中。

关于java - 如何使用 JDT-AST 提取已知行中的条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35797552/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com