java多级菜单列表怎么做_【转载】Java实现多级菜单(递归)

();

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)*

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值