编程语言
首页 > 编程语言> > java recursive tree.

java recursive tree.

作者:互联网



	public List<LinkedHashMap<String, Object>> queryTree() {
		Map<String, Object> paramMap = new HashMap<>();
		paramMap.put("pid",0);
		List<LinkedHashMap<String, Object>> linkedHashMaps =  TypeMapper
				.queryType(paramMap);
		if(linkedHashMaps != null && linkedHashMaps.size()>0){
			for(LinkedHashMap<String, Object> map : linkedHashMaps){
				Long  pid =  (Long)map.get("id");
				List<LinkedHashMap<String, Object>> linkedHashMaps1 = recursiveTree(pid);
				map.put("child",linkedHashMaps1);
			}
		}
		return linkedHashMaps;
	}

 
	public List<LinkedHashMap<String, Object>> recursiveTree(Long pid) {
		Map<String, Object> paramMap = new HashMap<>();
		paramMap.put("pid",pid);
		List<LinkedHashMap<String, Object>> treeNodes =   TypeMapper
				.queryType(paramMap);
		for (LinkedHashMap<String, Object> node:treeNodes) {
			List<LinkedHashMap<String, Object>> treeNodes1 = recursiveTree( (Long)node.get("id"));
			if (!treeNodes1.isEmpty()) {
				node.put("child",treeNodes1);
			}
		}
		return treeNodes;
	}

标签:java,recursive,tree,pid,Long,paramMap,put,linkedHashMaps,List
来源: https://blog.csdn.net/lisztli/article/details/116746767