();
for (Menu nav : allMenu) {
// 遍历所有节点,将所有菜单的父id与传过来的根节点的id比较
//相等说明:为该根节点的子节点。
if(nav.ParentId().equals(id)){
childList.add(nav);
}
}
//递归
for (Menu nav : childList) {
nav.setChildren(getChild(nav.getId(), allMenu));
}
Collections.sort(childList,order());//排序
//如果节点下没有子节点,返回一个空List(递归退出)
if(childList.size() == 0){
return new ArrayList();
}
return childList;
}
```
最后返回的JSON串如下:
```java
{
"success": "true",
"list": [
{
"id": "1",
"name": "Java",
"parentid": "0",
"url": "http://www.aliouchen.com",
"order": 1,
"children": [
{
"id": "2",
"name": "并发编程",
"parentid": "1",
"url": "http://www.aliouchen.com",
"order": 1,
"children": []
},
{
"id": "3",
"name": "多线程",
"parentid": "1",
"url": "http://www.aliouchen.com",
"order": 2,
"children": [
"id": "4",
"name": "Thread",
"parentid": "3",
"url": "http://www.aliouchen.com",
"order": 1,
"children":[]
]
}
]
},
{
"id": "5",
"name": "Python",
"parentid": "0",
"url": "http://www.aliouchen.com",
"order": 2,
"children": []
}
]
}
```
*[附:原文链接地址](https://blog.csdn.net/u010393325/article/details/80696555)*