Java|如何使用Java构造层级结构的树形数据

Java|如何使用Java构造层级结构的树形数据

文章图片

Java|如何使用Java构造层级结构的树形数据

文章图片

Java|如何使用Java构造层级结构的树形数据

文章图片


层级结构的数据在日常工作中是很常见的 , 例如:地市层级数据 , 机构层级数据 , 单位层级数据等等 。
这周在工作中 , 我就遇到了需要处理层级结构的数据 , 功能需求很简单:前端有个查询页面 , 需要根据地市查询相应的数据 , 并且地市是按照层级展示的 , 选择对应的地市 , 需要将当前地市及其所有下级地市数据展现出来 。 这篇文章主要记录一下如何使用Java构造一个层级结构的树形数据 。
一、实现思路构造层级数据 , 首先需要确保处理的数据是满足层级关系的 , 即:可以通过编号能够找到对应的上级编号 , 如果是最顶层数据 , 则顶层编号可以为空或者为指定编号 。 其次 , 就是利用递归的思想 , 将每一层的数据找到对应的下级数据即可 。

  • 满足层级关系
  • 利用递归思想

二、实现代码这里使用地市数据来作为测试案例 , 测试数据如下:

【Java|如何使用Java构造层级结构的树形数据】这里的OrgVO是保存数据的实体类 , 类中属性有如下:

接着 , 编写一个获取子级数据的方法 , 并且是递归调用自身 , 具体实现如下所示:

编写一个获取最顶层数据的方法 , 然后遍历最顶层的数据 , 循环调用上面获取子级数据的方法 , 循环结束时候 , 树形数据也就构造完成 。


测试能否成功构造树形数据 , 如下所示:

三、具体效果查看代码输出结果 , 将数据格式化 , 效果如下所示:


到此 , 使用Java构造层级结构的树形数据就完成了 。
这是我的第102篇文章 , 感谢您的阅读 。