当前位置:网站首页>树形结构构造示例代码
树形结构构造示例代码
2022-08-02 20:36:00 【jsxztshaohaibo】
/**
* 构造树形结构
* @param resourceList
* @return
*/
public List<RResource> buildResourceTreeInfo(List<RResource> resourceList) {
List<RResource> result = new ArrayList<>();
Map<String,RResource> record = new HashMap<>();
for (RResource resource : resourceList) {
if (RResource.TOP_LEVEL_NODE.equals(resource.getParentId())) {//TOP_LEVEL_NODE=0
resource.setChildren(new ArrayList<>());
result.add(resource);
}
record.put(resource.getId(), resource);
}
for (RResource resource : resourceList) {
if (StringUtils.isNotBlank(resource.getParentId()) &&!RResource.TOP_LEVEL_NODE.equals(resource.getParentId())) {//TOP_LEVEL_NODE=0
RResource parent = record.get(resource.getParentId());
if (parent != null) {
parent.getChildren().add(resource);
}
}
}
return result;
}边栏推荐
- Li Mu hands-on deep learning V2-BERT pre-training and code implementation
- Solve the docker mysql can't write Chinese
- go——垃圾回收机制(GC)
- js how to get the browser zoom ratio
- PLC working principle animation
- C primer plus学习笔记 —— 9、联合&枚举&typdef
- ACE JET NPOI
- Golang source code analysis: time/rate
- The Orsay in Informatics (1256: Bouquet for Algernon)
- 信息学奥赛一本通(1258:【例9.2】数字金字塔)
猜你喜欢
随机推荐
奥特学园ROS笔记--7(289-325节)
js如何获取浏览器缩放比例
【3D视觉】realsense D435三维重建
软件测试的流程规范有哪些?具体要怎么做?
Qt提升自定义控件,找不到头文件
李沐动手学深度学习V2-BERT预训练和代码实现
【目标检测】YOLOv5:640与1280分辨率效果对比
框架设计:PC 端单页多页框架如何设计与落地
[21 Days Learning Challenge] Bubble Sort and Insertion Sort
【SLAM】DM-VIO(ros版)安装和论文解读
训练双塔检索模型,可以不用query-doc样本了?明星机构联合发文
sre成长之路
解道9-编程技术6
拥抱Cmake小朋友 简单又实用,但是不灵活
美国爱荷华州立大学| Improving Distantly Supervised Relation Extraction by Natural Language Inference(通过自然语言推理改进远程监督关系提取)
YOLOv5+BiSeNet——同时进行目标检测和语义分割
VisualStudio 制作Dynamic Link Library动态链接库文件
Digital twins help visualize the construction of smart cities
Helm基础知识
JMeter的基本使用









