Package org.miaixz.bus.core.tree


package org.miaixz.bus.core.tree
提供通用树生成,特点:

1、每个字段可自定义 2、支持排序 树深度配置,自定义转换器等 3、支持额外属性扩展 4、贴心 许多属性,特性都有默认值处理 5、使用简单 可一行代码生成树 6、代码简洁轻量无额外依赖

Since:
Java 17+
Author:
Kimi Liu
  • Class
    Description
    BeanTree<T,R extends Comparable<R>>
    本类是用于构建树的工具类,特点是采取lambda,以及满足指定类型的Bean进行树操作 Bean需要满足三个属性: 包含不为null的主键(例如id) 包含容许为null的关联外键(例如parentId) 包含自身的子集,例如类型为List的children 本类的构建方法是通过BeanTree.of 进行构建,例如:
    用于迭代层级结构(比如树或图)的迭代器, 支持广度优先深度优先两种遍历模式。 迭代器仅适用于访问层级结构,因此不支持Iterator.remove()方法。 要构建树或者操作数,请参见BeanTreeTreeKit
    通过转换器将你的实体转化为TreeNodeMap节点实体 属性都存在此处,属性有序,可支持排序
    Node<T>
    节点接口,提供节点相关的的方法定义
    树配置属性相关
    树构建器
    树节点 每个属性都可以在NodeConfig中被重命名 在你的项目里它可以是部门实体、地区实体等任意类树节点实体 类树节点实体: 包含key,父Key.不限于这些属性的可以构造成一颗树的实体对象