当前位置: 移动技术网 > IT编程>开发语言>Java > 树形数据的工具类

树形数据的工具类

2020年07月17日  | 移动技术网IT编程  | 我要评论

树形数据(Java)的返回)## 树形数据

@Component
public class TreeConfig {
    public static List<Memu> treeFirst(List<Memu> list) {
    //这里的Menu是我自己的实体类,参数只需要菜单id和父id即可,其他元素可任意增添
        Map<Integer, Memu> map = new HashMap<>(50);
        for (Memu treeNode : list) {
            map.put(treeNode.getMenuId(), treeNode);
        }
        return addChildren(list, map);
    }
    private static List<Memu> addChildren(List<Memu> list, Map<Integer, Memu> map) {
        List<Memu> rootNodes = new ArrayList<>();
        for (Memu treeNode : list) {
            Memu parentHave = map.get(treeNode.getParentId());
            if (StringUtils.isEmpty(parentHave)) {
                rootNodes.add(treeNode);
            } else {
                //当前位置显示实体类中的List元素定义的参数为null,出现空指针异常错误
                if(StringUtils.isEmpty( parentHave.getChildList())){
                    parentHave.setChildList(new ArrayList<Memu>());
                    parentHave.getChildList().add(treeNode);
                }else {
                    parentHave.getChildList().add(treeNode);
                }
            }
        }
        return rootNodes;
    }

}

本文地址:https://blog.csdn.net/TigerTonyLoginer/article/details/107389325

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网