如何递归获取最后一个对象属性



我有一个列表,类型是类。类对象包括 3 个属性(索引、名称、类(。子类还包含索引、名称、类等。我想做的是获取最后一个类对象的索引值。我写了一些代码。我可以获取最后一个对象的索引值,但是该方法的返回值正在更改null值。如何解决?

public Long getClasses (List<Classes> classes){
Long index=null;
for(int i=0;i <classes.size(); i++) {
if(classes.get(i).classes().size()>0) {
getClasses(classes.get(i).getClasses());
}
else {
index= classes.get(i).getIndexValue();
break;
}
}
return index;
}

在您的代码中,当抑制调用getClasses时,您不会返回来自即将到来的方法调用的值。按如下方式替换代码:

public Long getClasses (List<Classes> classes){

for(int i=0;i <classes.size(); i++){
if(classes.get(i).classes().size()>0){
//Change is here
return getClasses(classes.get(i).getClasses());
}else{
return classes.get(i).getIndexValue();
}
}
return null;
} 

最新更新