程柯梦想 2016-10-08 03:35 采纳率: 0%
浏览 863
已结题

父子类节点迭代遍历 3000多条数据获取性能堪忧,有什么更好的处理方法

private static void recursiveArea(SysAreaVo area, List areas) {
for (int i = areas.size() - 1; i >= 0; i--) {
SysArea resource = areas.get(i);
if (resource.getParentId().equals(area.getId())) {
area.getChildren().add(convertToArea(resource));
areas.remove(i);
}
}
for (SysAreaVo subArea : area.getChildren()) {
recursiveArea(subArea, areas);
}
}

返回的Json数据截取一段:
{
"status": 1,
"code": 200,
"message": "查询成功",
"option": null,
"data": {
"id": "100000",
"name": "中国",
"parentId": "0",
"code": "100000",
"children": [
{
"id": "110000",
"name": "北京",
"parentId": "100000",
"code": "132",
"children": [
{
"id": "110100",
"name": "北京市",
"parentId": "110000",
"code": "\n13211",
"children": [
{
"id": "110101",
"name": "东城区",
"parentId": "110100",
"code": "132",
"children": [],
"hasChildren": false
}

  • 写回答

4条回答 默认 最新

  • 诸葛孔明灯 2016-10-08 04:01
    关注

    你这不就是省市县 三级级联吗? 直接遍历 应该没问题的吧。

    评论

报告相同问题?