递归将两个集合整合

Posted 教练我想打篮球

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了递归将两个集合整合相关的知识,希望对你有一定的参考价值。

public List<fanhuiVo> get(List<menta> list,
List<treeVO> deptList) {
List<fanhuiVo> voList = new ArrayList<>(); //list为带有id和数据属性的数组集合,deptlist为树结构集合,其中的key对应list中的id
for (fanhuiVo dvO : voList ) {
fanhuiVo vo = new fanhuiVo();
// 设置名称
vo.setObjName(dvO .getTitle());
vo.setObjid(dvO .getKey());  //设置对应的key值
voList.add(vo);
List<treeVO> children = dvO .getChildren(); //获取子节点数据
// 如果是空,是子节点,去获取配置的值
if (CollUtil.isEmpty(children)) {
for (menta m: list) {
// 如果是子节点的话,就将数据赋值给new出的vo对象
if (m.getObjid().equals(dvO .getKey())) {
BeanUtil.copyProperties(m, vo);
}
}
} else {

//如果不是子节点进行递归继续调取
List<fanhuiVo> voChildren = get( list, children);
vo.setChildren(voChildren);
}
}
return voList ;
}

以上是关于递归将两个集合整合的主要内容,如果未能解决你的问题,请参考以下文章

递归与分治-合并排序快速排序以及循环赛问题

11.幂集计算[回溯递归]<一>

并查集

归并排序(MergeSort)

子图上的 MST 递归构造

按快速排序算法求数组中第K大值(递归)