Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JDT AstParser-如何从MethodInvocation获取赋值(父级)_Java_Abstract Syntax Tree_Eclipse Jdt - Fatal编程技术网

Java JDT AstParser-如何从MethodInvocation获取赋值(父级)

Java JDT AstParser-如何从MethodInvocation获取赋值(父级),java,abstract-syntax-tree,eclipse-jdt,Java,Abstract Syntax Tree,Eclipse Jdt,我正在尝试获取作为MethodInvocation父级的赋值 测试代码: package test; public class Test { public void method() { String a = "123".substring(1); } } 我的代码: public static Assignment getAssignmentBlock(MethodInvocation inv) { ASTNode node = inv.ge

我正在尝试获取作为MethodInvocation父级的赋值 测试代码:

package test;

public class Test
{
    public void method()
    {
        String a = "123".substring(1);
    }
}
我的代码:

public static Assignment getAssignmentBlock(MethodInvocation inv)
{
    ASTNode node = inv.getParent();
    while(node != null)
    {
        if(node instanceof Assignment)
            return (Assignment) node;
        node = node.getParent();
    }
    return null;
}
和访客

cu.accept(new ASTVisitor()
{
    public boolean visit(MethodInvocation inv)
    {               
        System.out.println(inv.getName().getFullyQualifiedName());
        Assignment a = MethodCall.getAssignmentBlock(inv);
        System.out.println(a != null);
        return true;
    }
});
但我一直看到
false
意味着赋值为空 有什么问题吗?或者,如果这是一个错误的方式,请建议正确的方式。谢谢