如何将list集合转成树形格式?

有关联关系

查询出全部的问题,通过关联关系判断。
案例:
实体类中添加小问题集合;

@Transient //使用mybatisCodeHelper生成代码忽略
    @TableField(exist = false)//忽略实体映射
    private List<SysInquiry> inquiries = new ArrayList<>();

控制层组装;

    //格式转化
    private static void listTree(List<SysInquiry> list){
        //用来存储需要删除的小问题
        List<SysInquiry> sysInquiries = new ArrayList<>();
        //小问题添加到大问题中
        list.forEach(sysInquiryMin -> {
            //判断是不是小问题
            if(sysInquiryMin.getFid()!=0){
                //查找小问题对应的大问题
                list.forEach(sysInquiryMax -> {
                    if(Long.valueOf(sysInquiryMin.getFid())==sysInquiryMax.getId()){
                        //大问题的小问题集合中添加该小问题对象
                        sysInquiryMax.getInquiries().add(sysInquiryMin);
                        //将该小问题添加到删除集合中
                        sysInquiries.add(sysInquiryMin);
                    }
                });
            }
        });
        //全部问题中删除子问题
        sysInquiries.forEach(sysInquiry -> {
            list.remove(sysInquiry);
        });
    }
上一篇:d的别名赋值与{{与闭包


下一篇:js之for与forEach循环的区别