最近在处理一个树(根节点附带子节点 很多层)展开,利用递归展开的时候,出现问题
TmObject 是节点对象 附带子节点,objList是一个数组 size = 1,但是children有很多层,我希望通过sceneName 遍历 找到这棵树对应mObject的对象,代码如下,当我equals找到这个对象的时候,发现程序继续递归,是什么问题导致的?
private TmObject loanObjectByName(String sceneName, List<TmObject> objList) {
TmObject temp = getObjByName(sceneName, objList);
if (temp != null) {
return temp;
} else {
for (TmObject scene : objList) {
if (scene.getChildObject().size() > 0) {
loanObjectByName(sceneName, scene.getChildObject());
}
}
}
return null;
}
private TmObject getObjByName(String name, List<TmObject> objList) {
TmObject tmObject = null;
for (TmObject tmTestS : objList) {
if (name.equals(tmTestS.getSceneName())) {
tmObject = tmTestS;
break;
}
}
return tmObject;
}