# tree **Repository Path**: shengxiluo/tree ## Basic Information - **Project Name**: tree - **Description**: 根据java的引用特性获取树形json,避免使用递归算法 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2018-09-20 - **Last Updated**: 2021-11-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # tree 根据java的引用特性获取树形json,避免使用递归算法 ``` 原始数据: {"id":1,"name":"树节点1","pId":0} {"id":2,"name":"树节点2","pId":1} {"id":3,"name":"树节点3","pId":1} {"id":4,"name":"树节点4","pId":2} {"id":5,"name":"树节点5","pId":2} {"id":6,"name":"树节点6","pId":4} {"id":7,"name":"树节点7","pId":5} {"id":8,"name":"树节点8","pId":5} ``` ``` 转换的树形数据 { "child": [{ "child": [{ "child": [{ "child": [{ "child": [], "id": 6, "name": "树节点6" }], "id": 4, "name": "树节点4" }, { "child": [{ "child": [], "id": 7, "name": "树节点7" }, { "child": [], "id": 8, "name": "树节点8" }], "id": 5, "name": "树节点5" }], "id": 2, "name": "树节点2" }, { "child": [], "id": 3, "name": "树节点3" }], "id": 1, "name": "树节点1" }], "id": 0, "name": "根节点" } ``` 执行: 在 TreeCovertUtil 中执行 main() 方法即可,相比较于递归,代码很好理解