今天带来list转tree和list中查找某节点下的所有数据操作教程详解
类的实例化顺序
父类静态变量、 父类静态代码块、 子类静态变量、 子类静态代码块、
父类非静态变量(父类实例成员变量)、 父类构造函数、 子类非静态变量(子类实例成员变量)、 子类构造函数。
已知组织类Org{String id,String name,String parentId},现在一List<Org>中存放无序的Org数据,求一个组织id下的所有组织。
public static List<Org> childList=new ArrayList<>();
public static List<Org> findChild(List<Org> list,String id){
for (Org org:list){
if(org.getParentId().equals(id)){
childList.add(org);
findChild(list,org.getId()); //递归实现
}
}
return childList;
}
list转tree:
// node一开始为根节点
public static TreeNode listToTree(TreeNode node, List<TreeNode> sourceLit){
// 重根节点开始
for (TreeNode sourceNode : sourceLit){
if (sourceNode.getpId() == node.getId()){
if(node.getChildrenList() == null){
node.setChildrenList(new ArrayList<TreeNode>());
}
node.getChildrenList().add(listToTree(sourceNode, sourceLit));
}
}
return node;
}
补充知识: Java实现树数据Tree与List互转并逐级汇总节点的值(支持树节点多列统计)
主要需求:a.实现树Tree与List互转 b.Tree实现多列统计数据汇总。前度采用MiniUI。
逐级汇总数据:找到最小节点,然后回溯其所有父节点,注意值的重复计算问题。
以上就是关于list转tree和list中查找某节点下的所有数据操作全部内容,感谢大家支持。
查看更多关于list转tree和list中查找某节点下的所有数据操作的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did18428