简单list转化为tree结构
来源:互联网 发布:xbox软件 编辑:程序博客网 时间:2024/06/07 02:50
public List<Module> getTree() {
List<Module> list = moduleMapper.queryList();
// List<Module> modules = makeTree(list);
return list;
}
private List<Module> makeTree(List<Module> list) {
List<Module> parent = new ArrayList<Module>();
// get parentId = null;
for (Module e : list) {
if (e.getParent_Module() == null) {
e.setChildren(new ArrayList<Module>(0));
parent.add(e);
}
}
// 删除parentId = null;
list.removeAll(parent);
makeChildren(parent, list);
return parent;
}
private void makeChildren(List<Module> parent, List<Module> children) {
if (children.isEmpty()) {
return;
}
List<Module> tmp = new ArrayList<Module>();
for (Module c1 : parent) {
for (Module c2 : children) {
c2.setChildren(new ArrayList<Module>(0));
if (c1.getId().equals(c2.getParent_Module().getId())) {
c1.getChildren().add(c2);
tmp.add(c2);
}
}
}
children.removeAll(tmp);
makeChildren(tmp, children);
}
List<Module> list = moduleMapper.queryList();
// List<Module> modules = makeTree(list);
return list;
}
private List<Module> makeTree(List<Module> list) {
List<Module> parent = new ArrayList<Module>();
// get parentId = null;
for (Module e : list) {
if (e.getParent_Module() == null) {
e.setChildren(new ArrayList<Module>(0));
parent.add(e);
}
}
// 删除parentId = null;
list.removeAll(parent);
makeChildren(parent, list);
return parent;
}
private void makeChildren(List<Module> parent, List<Module> children) {
if (children.isEmpty()) {
return;
}
List<Module> tmp = new ArrayList<Module>();
for (Module c1 : parent) {
for (Module c2 : children) {
c2.setChildren(new ArrayList<Module>(0));
if (c1.getId().equals(c2.getParent_Module().getId())) {
c1.getChildren().add(c2);
tmp.add(c2);
}
}
}
children.removeAll(tmp);
makeChildren(tmp, children);
}
0 0
- 简单list转化为tree结构
- 简单的list查询转换为tree结构
- JSON转化为Tree
- list转化为xml
- datatable 转化为 List
- 数组转化为List
- List转化为Json
- DataTable 转化为List
- 内容转化为List
- map转化为list
- list转化为字符串
- map转化为list
- python如何将字典中的值转化为list结构,以词频统计为例
- 对象转化为 JSON tree
- Convert Sorted List to Binary Search Tree 将有序链表转化为平衡二叉排序树
- 泛型List转化为DataTable
- List转化为Json补充
- json转化为List对象。
- ASP.NET验证控件详解
- 基于java类库的DES加密算法实现
- SpringMVC总结
- Mathematica system
- 斐讯K2刷华硕固件
- 简单list转化为tree结构
- 关于cordova 那些神坑—cordova 设置沉浸式状态栏
- Unity 4.X BuildAssetBundle 策略
- bzoj 4561: [JLoi2016]圆的异或并 (计算几何+扫描线+splay)
- C# 第一次网络请求速度慢的原因
- java环境搭建一(JDK)
- Java中的部分类的理解
- kodi 17.2编译
- openstack启动linuxbridge_agent服务报错 'LinuxBridgeNeutronAgentRPC' object has no attribute 'plugin_rpc'