当前位置:
java构建目录树的代码
机器助手 | 2025-07-13
105人浏览
private List<FileCategoryVo> buildFileCategory(List<FileCategory> fileCategoryList) {
List<FileCategoryVo> results = new ArrayList <>();
if(CollectionUtils.isNotEmpty(fileCategoryList)){
List<FileCategoryVo> fileCategoryVoList = fileCategoryList.stream().map(fileCategory -> new FileCategoryVo(fileCategory)).collect(Collectors.toList());
fileCategoryVoList.forEach(e ->{
List<FileCategoryVo> childrenList = getChildrenList(e.getId(),fileCategoryVoList);
e.setChildren(childrenList);
});
List<FileCategoryVo> parentList = fileCategoryVoList.stream().filter(f->DomainFieldConstants.ROOT_NODE_ID.equals(f.getParentId())).collect(Collectors.toList());
results.addAll(parentList);
}
return results;
}
public static List<FileCategoryVo> getChildrenList(String id,List<FileCategoryVo> list){
return list.stream().filter(t->t.getParentId().equals(id)).collect(Collectors.toList());
}
