首页 > 代码库 > java 遍历所有子节点
java 遍历所有子节点
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | /** * */ package com.test.controller; import java.util.ArrayList; import java.util.List; /** * @author ST2014-12 * */ public class FindAllChildren { List<Long> childrenIdList= new ArrayList<Long>(); static List<Node> nodeList= new ArrayList<Node>(); public static void main(String[] args) { Node node1 = new Node(1l, "蔬菜" , 0l); Node node2 = new Node(2l, "水产" , 0l); Node node3 = new Node(3l, "畜牧" , 0l); Node node4 = new Node(4l, "瓜类" , 1l); Node node5 = new Node(5l, "叶类" , 1l); Node node6 = new Node(6l, "丝瓜" , 4l); Node node7 = new Node(7l, "黄瓜" , 4l); Node node8 = new Node(8l, "白菜" , 5l); Node node9 = new Node(9l, "虾" , 2l); Node node10 = new Node(10l, "鱼" , 2l); Node node11 = new Node(11l, "牛" , 3l); nodeList.add(node1); nodeList.add(node2); nodeList.add(node3); nodeList.add(node4); nodeList.add(node5); nodeList.add(node6); nodeList.add(node7); nodeList.add(node8); nodeList.add(node9); nodeList.add(node10); nodeList.add(node11); FindAllChildren queryCh= new FindAllChildren(); System.out.println(queryCh.getChildrenId(2l)); } private String getChildrenId( long level) { // TODO Auto-generated method stub List<Node> childrenList=getChildrenList(level); //遍历子节点列表 queryChildrenList(childrenList); return childrenIdList.toString(); } //递归获取每个节点下子节点 void queryChildrenList(List<Node> childrenList){ for (Node n : childrenList){ //遍历列表中每个节点 List<Node>chilList= getChildrenList(n.getId()); //获取每个节点的子节点列表 queryChildrenList(chilList); } }; //遍历全列表 查询所传id 下的子节点 private List<Node> getChildrenList(Long level) { List<Node> childrenList= new ArrayList<Node>(); //获取该节点的子节点列表 // TODO Auto-generated method stub for (Node n : nodeList){ if (n.getParentId()==level){ childrenList.add(n); childrenIdList.add(n.getId()); } } return childrenList; } } |
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。