java根据一个父id查询其下的所有子id
时间: 2023-04-27 20:00:19 浏览: 222
sql查询某个parentid下的所有childid
3星 · 编辑精心推荐
可以使用递归的方式来实现,具体步骤如下:
1. 定义一个方法,传入父id作为参数,返回一个包含所有子id的List。
2. 在方法中,先查询出所有父id为传入参数的子id,并将其存入List中。
3. 遍历List中的每个子id,将其作为参数再次调用该方法,得到其下的所有子id,并将其添加到List中。
4. 递归结束的条件是没有子id或者查询到的子id已经全部添加到List中。
5. 最后返回List即可。
示例代码如下:
```
public List<Integer> getChildIds(int parentId) {
List<Integer> childIds = new ArrayList<>();
// 查询所有父id为parentId的子id
List<Integer> directChildIds = queryDirectChildIds(parentId);
childIds.addAll(directChildIds);
// 遍历每个子id,递归查询其下的所有子id
for (Integer childId : directChildIds) {
List<Integer> grandChildIds = getChildIds(childId);
childIds.addAll(grandChildIds);
}
return childIds;
}
```
阅读全文