java怎么获取下级所有childrenid

54次阅读
没有评论

共计 1027 个字符,预计需要花费 3 分钟才能阅读完成。

在 Java 中,可以使用递归的方式来获取下级所有 children ID。以下是一个示例代码:

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Main {public static void main(String[] args) {Map<Integer, List<Integer>> childrenMap = new HashMap<>();
        childrenMap.put(1, List.of(2, 3));
        childrenMap.put(2, List.of(4, 5));
        childrenMap.put(3, List.of(6, 7));

        List<Integer> childrenIds = getChildrenIds(childrenMap, 1);
        System.out.println(childrenIds);
    }

    public static List<Integer> getChildrenIds(Map<Integer, List<Integer>> childrenMap, int parentId) {List<Integer> childrenIds = new ArrayList<>();
        List<Integer> children = childrenMap.get(parentId);

        if (children != null) {for (int childId : children) {childrenIds.add(childId);
                childrenIds.addAll(getChildrenIds(childrenMap, childId));
            }
        }

        return childrenIds;
    }
}

在上面的示例中,我们使用一个 Map<Integer, List<Integer>> 来表示父级和子级之间的关系。getChildrenIds方法使用递归的方式来获取下级所有 children ID。在每次迭代中,我们将当前子级的 ID 添加到结果列表中,并继续递归调用以获取该子级的下级 ID。最后,返回所有 children ID 的列表。

在示例中,我们使用 childrenMap 来表示以下关系:

  • 父级 1 有子级 2 和 3
  • 子级 2 有子级 4 和 5
  • 子级 3 有子级 6 和 7

输出结果为:[2, 4, 5, 3, 6, 7],表示 1 的所有下级 ID 为 2、4、5、3、6 和 7。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-16发表,共计1027字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)