当前位置:网站首页>树形结构构造示例代码
树形结构构造示例代码
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; }
边栏推荐
猜你喜欢
接口测试常用工具及测试方法(入门篇)
2022年金九银十,Android面试中高频必问的问题汇总
Solve the docker mysql can't write Chinese
封装和包、访问修饰权限
Common tools and test methods for interface testing (Introduction)
千人优学 | GBase 8s数据库2022年6月大学生专场实训圆满结束
美国爱荷华州立大学| Improving Distantly Supervised Relation Extraction by Natural Language Inference(通过自然语言推理改进远程监督关系提取)
.NET性能优化-你应该为集合类型设置初始大小
《分布式微服务电商》专题(一)-项目简介
OP-5,输入/输出信号范围-一信号处理能力
随机推荐
"Weekly Translate Go" This time we have something different!-- "How to Code in Go" series launched
C# Monitor类
如何成为一名正义黑客?你应该学习什么?
Adobe官方清理工具Adobe Creative Cloud Cleaner Tool使用教程
Jar包启动通过ClassPathResource获取不到文件路径问题
快速构建电脑软件系统 、超好用经典的网页推荐汇总
C# Barrier类
【流媒体】推流与拉流简介
包管理工具npm- node package management相关知识 、检查包更新、NPM包上传、更换镜像、npm ERR! registry error parsing json
.NET如何快速比较两个byte数组是否相等
2170. 使数组变成交替数组的最少操作数
Geoip2 - golang golang source code analysis
Flink Yarn Per Job - 启动AM
Nervegrowold hands-on learning deep learning V2 - Bert pre training data set and code implementation
How to use windbg check c # a thread stack size?
HCIP--路由策略实验
SQL基础练习题(mysql)
模糊查询like用法实例(Bee)
信息学奥赛一本通(1257:Knight Moves)
ALV concept explanation