xml递归调用的无法跳出循环问题

代码如下:
设置break不起作用,请问该怎么改?

    public Element treeWalk(Element element,String name){
        Element tempElement=null;
        Node node=null;
        for(int i=0,size=element.nodeCount();i<size;i++){
            node=element.node(i);
            if(name.equals(node.getName())){
                tempElement=(Element)node;
                System.out.println(tempElement.getName());
                break;
            }else if(node instanceof Element){
                treeWalk((Element)node, name);
            }
        }
        return tempElement;
    }

你是不是要找某个节点 你在这里设置break 只能使你要找的节点的同一层的后面的循环不再继续
比如.........
当你找到need节点的时候 后面的n2节点的循环还是会继续的 不过最终这个循环还是会结束的
然后你能把你的需求说出来吗,不然不知道要怎么改

你也知道自己是递归!
那么其中一层(比如第3层)break的时候,哪里通知了上层(第2层、第1层)已经找到可以跳出?