/**标签:java,treeData,List,param,children,result,集合,childrenKey,展开 From: https://www.cnblogs.com/databank/p/18108047
* java中展开树集合
*
* @param childrenKey 子集key
* @param treeData 树数据
* @param result 集合数据
* @param <T> List
*/
public static <T> List<T> treeToList(String childrenKey, List<T> treeData, List<T> result) {
for (T treeDatum : treeData) {
result.add(treeDatum);
List<T> children = (List<T>) ReflectUtil.getFieldValue(treeDatum, childrenKey);
if (CollUtil.isNotEmpty(children)) {
treeToList(childrenKey, children, result);
}
}
return result;
}