1. 程式人生 > 實用技巧 >java向下遞迴,構造樹形結構

java向下遞迴,構造樹形結構

程式碼邏輯如下:

//xxx組織機構樹形列表方法
public List<Organization> xxxTreeOrg(xxx xx){
   //所有的組織機構list
  List<Organization> allOrganizationList = xxxDao.findAllOrgList();

   //所有一級組織機構List
  List<Organization> oneOrganizationList = xxxDao.findOneOrgList();

  for (Organization oneOrganization : oneOrganizationList) {
      oneOrg.setChild(doOrgIterator(oneOrganization, allOrganizationList));
  }

  return oneOrganizationList; }
//向下遞迴的方法 private List<Organization> doOrgIterator(Organization oneOrganization, List<Organization> allOrganizationList) {   List<Organization> childList = new ArrayList<>();   for (Organization organization : allOrganizationList) {   
if(oneOrganization.getId().intValue() == organization.getPid().intValue()) {     organization.setChild(doOrgIterator(organization, allOrganizationList));     childList.add(organization);    }   }   return childList; }