如果aMember
有子项,则可以正确地将子项添加到拼合列表中,但是会错过其Member
本身。只需将成员的else
添加移动到块添加之外,就可以了:
private static List<Member>
convertToFlatList(List<Member> memberList, List<Member> flatList)
{
for (Member member : memberList)
{
// Always add the member to flatList
flatList.add(memeber);
// If it has children, add them toore
if (member.getChildren() != null)
{
convertToFlatList(member.getChildren(), flatList);
}
}
return flatList;
}