美文网首页工具类
树形结构转换工具类TreeUtils

树形结构转换工具类TreeUtils

作者: fanderboy | 来源:发表于2022-01-30 15:12 被阅读0次

@Slf4j

public class TreeUtils {

    /**

    * 集合转树结构

    *

    * @param collection 目标集合

    * @param clazz      集合元素类型

    * @return 转换后的树形结构

    */

    public static <T> Collection<T> toTree(@NotNull Collection<T> collection, @NotNull Class<T> clazz) {

        return toTree(collection, null, null, null, clazz);

    }

    /**

    * 集合转树结构

    *

    * @param collection 目标集合

    * @param id        节点编号字段名称

    * @param parent    父节点编号字段名称

    * @param children  子节点集合属性名称

    * @param clazz      集合元素类型

    * @return 转换后的树形结构

    */

    public static <T> Collection<T> toTree(@NotNull Collection<T> collection, String id, String parent, String children, @NotNull Class<T> clazz) {

        try {

            if (CollectionUtils.isEmpty(collection)) {

                // 如果目标集合为空,直接返回一个空树

                return null;

            }

            if (StringUtils.isEmpty(id)) {

                // 如果被依赖字段名称为空则默认为id

                id = "id";

            }

            if (StringUtils

相关文章

网友评论

    本文标题:树形结构转换工具类TreeUtils

    本文链接:https://www.haomeiwen.com/subject/cfwqkrtx.html