//调用
List<Map<String,Object>> list = new ArrayList<>();
for (int i = 0; i < depList.size(); i++) {
Map<String,Object> map = new HashMap<>();
map.put("id",depList.get(i).getId());
map.put("pId",depList.get(i).getFid());
map.put("name",depList.get(i).getCnatureClassName());
list.add(map);
}
List<Map<String, Object>> child = getChild(list, "0");
//递归
public List<Map<String,Object>> getChild(List<Map<String,Object>> lawList, String pId){
List<Map<String,Object>> childList = new ArrayList<>();
for (Map<String,Object> m : lawList) {
if(m.get("pId").equals(pId)){
//说明是子类
childList.add(m);
}
}
// 把子菜单的子菜单再循环一遍
for (Map<String,Object> m: childList) {
// 递归
m.put("child",getChild(lawList,String.valueOf(m.get("id"))));
}
// 递归退出条件
if (childList.size() == 0) {
List<Map<String,Object>> list = new ArrayList<>();
return list;
}
return childList;
}
java递归组织结构 java简单递归
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
java递归获取树形结构数据
java递归获取树形结构数据
List 递归 java -
Java中简单的递归树 java递归树形结构
Java递归实现树结构遍历展示以及条件筛选
Java中简单的递归树 java List 当前对象 递归 -
java 递归构造树 java递归树形结构
步骤:1. 查询数据库,获得所有的部门列表2. 调用下面的实现方法
java 算法 1024程序员节 List 子节点