我有一個簡單的類人:更新值遞歸
private String name;
private String surname;
List<Person> subPersons;
//getters & setters
我怎麼可以在列表遞歸的更新值?例如我有大小爲3的列表。在列表(1)中我有另一個大小爲2的列表。我需要在每個子列表中的Person類中更新值的遞歸方法。
P.S.對不起,我的英語:)
我有一個簡單的類人:更新值遞歸
private String name;
private String surname;
List<Person> subPersons;
//getters & setters
我怎麼可以在列表遞歸的更新值?例如我有大小爲3的列表。在列表(1)中我有另一個大小爲2的列表。我需要在每個子列表中的Person類中更新值的遞歸方法。
P.S.對不起,我的英語:)
使用此功能,將更新的人有孩子的任何深度:
public void update(Person person) {
// Do whatever you want on that particular person
...
// Update sub persons (assume subPersons maay not be null, only empty)
for(Person subPerson: person.subPersons) {
update(subPerson);
}
}
這麼簡單?大!! –
public void recursiveUpdate(Person parent) {
// Modify name and surname
// parent.setName(...); parent.setSurname(...);
List<Person> children = parent.getSubPersons();
if ((children == null) || children.isEmpty()) {
return;
} else {
for (Person child : children) {
recursiveUpdate(child);
}
}
}
什麼你到目前爲止已經試過? –