//菜单树形结构
public JSONArray treeMenuList(JSONArray menuList, int parentId) {
JSONArray childMenu = new JSONArray();
for (Object object : menuList) {
JSONObject jsonMenu = JSONObject.fromObject(object);
int menuId = jsonMenu.getInt("id");
int pid = jsonMenu.getInt("parentId");
if (parentId == pid) {
JSONArray c_node = treeMenuList(menuList, menuId);
jsonMenu.put("childNode", c_node);
childMenu.add(jsonMenu);
}
}
return childMenu;
}
public static void main(String args[]) {
MenuCacheService menuCacheService = new MenuCacheService();
JSONArray jsonArray = new JSONArray();
Menu menu1 = new Menu();
menu1.setId(1);
menu1.setParentId(0);
menu1.setLevel(0);
Menu menu2 = new Menu();
menu2.setId(2);
menu2.setParentId(0);
menu2.setLevel(0);
Menu menu3 = new Menu();
menu3.setId(3);
menu3.setParentId(2);
menu3.setLevel(1);
Menu menu4 = new Menu();
menu4.setId(4);
menu4.setParentId(2);
menu4.setLevel(1);
Menu menu5 = new Menu();
menu5.setId(5);
menu5.setParentId(4);
menu5.setLevel(2);
Menu menu6 = new Menu();
menu6.setId(6);
menu6.setParentId(1);
menu6.setLevel(1);
jsonArray.add(menu1);
jsonArray.add(menu2);
jsonArray.add(menu3);
jsonArray.add(menu4);
jsonArray.add(menu5);
jsonArray.add(menu6);
System.out.print(menuCacheService.treeMenuList(jsonArray,0));
}
相关推荐
"Java递归树型结构通用数据库" Java递归树型结构通用数据库是指使用Java语言实现的递归树型结构数据库系统,该系统可以实现树型结构的部门管理,包括部门的添加、删除、修改和查询等操作。 知识点: 1. 递归树型...
Java 递归算法构造 JSON 树形结构 Java 递归算法构造 JSON 树形结构是指通过 Java 语言使用递归算法将数据库中的菜单表构建成树形的 JSON 格式发送给第三方。这种方法可以将复杂的树形结构数据转换成易于理解和处理...
通过学习和理解这些代码,你可以深入理解如何使用Java递归处理无限层级的树结构,这对于开发涉及树形数据的系统非常有用。 总之,使用Java递归实现无限层级树的关键在于定义好树节点类,明确生成新节点的条件,以及...
Java递归算法是一种重要的编程技巧,它通过函数自身调用自身来解决问题。在Java中,递归主要用于解决那些可以通过简化规模来逐步逼近解决方案的问题。这种技术在数据结构(如树和图)、排序算法(如快速排序和归并...
Java递归将List转为树形结构 博客地址:https://blog.csdn.net/weixin_38500202/article/details/110456363
通过阅读“java 递归问题文档”,你可以期待学习到如何定义和使用递归函数,如何设计和分析递归算法的效率,以及如何避免常见的递归陷阱。同时,提供的练习代码将让你有机会动手实践,巩固理论知识。 总结来说,...
Java 递归例子 Java 递归是指在 Java 编程语言中,使用递归函数来解决问题的方法。递归函数是指在函数体中调用自身的函数。Java 递归例子中提供了三个经典的递归例子:汉诺塔问题、斐波那契级数和最大公约数。 1. ...
Java递归是编程中一种强大的技术,主要用于解决那些可以分解为相同或类似子问题的问题。在Java中,递归主要应用于排序和查找算法,这两者都是数据处理的基础操作。本资料包聚焦于如何使用递归来实现这些算法,下面将...
Java递归是编程中的一个重要概念,它是指在函数或方法的定义中调用自身的过程。在Java中,递归通常用于解决那些可以被简化为规模更小的相同问题的复杂问题,例如遍历数据结构(如树和图)、计算阶乘、搜索算法等。...
本文将详细解析标题为“Java递归获取匹配后缀的文件列表”的程序,它演示了如何使用Java来递归地查找指定路径下具有特定后缀的文件,并将它们的路径或名称存储在列表中。 首先,让我们了解递归的基本概念。递归是指...
java 递归读取文件夹 读取文件 写文件java 递归读取文件夹 读取文件 写文件java 递归读取文件夹 读取文件 写文件java 递归读取文件夹 读取文件 写文件java 递归读取文件夹 读取文件 写文件java 递归读取文件夹 读取...
java代码-使用Java递归求和1+2+3+...+n的源代码 ——学习参考资料:仅用于个人学习使用!
Java 递归的方法求年龄,一个有意思的数学问题:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。 public static void main(String[] args) { TestAge ta = new TestAge();//创建类的一个实例 ...
Java递归读取文件例子 Java递归列出目录下全部文件 /** * 列出指定目录的全部内容 * */
在给定的标题“关于java递归文件,以及检索特定文件”中,我们可以推测这篇博文可能探讨了如何使用Java递归算法遍历文件系统,寻找特定类型的文件。下面将详细解释这个主题。 首先,让我们理解递归的概念。递归是一...
在Java编程中,递归拷贝文件是一种常见操作,特别是在处理目录结构时。这个"java 递归拷贝文件显示进度demo"是一个实用的示例,它不仅实现了从一个源目录到目标目录的深度拷贝,而且还提供了进度显示功能,这对于...
java递归算法,java递归算法,java递归算法
网上绝大部分java递归实现字符串反转缺少字符串判空条件,我加了上去。
java递归小例子,供初学者学习使用。九九递归
用递归的方法实现九宫格的初始化,可加深对二维数组传递参数的理解.