中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

java怎么獲取下級所有childrenid

小億
139
2023-10-25 10:00:10
欄目: 編程語言

在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。

0
武邑县| 武穴市| 唐河县| 乌鲁木齐县| 读书| 洛隆县| 道真| 灵丘县| 平凉市| 阳东县| 肇东市| 西昌市| 米泉市| 福建省| 施甸县| 合肥市| 慈利县| 平谷区| 来安县| 老河口市| 新营市| 文安县| 南康市| 惠州市| 延安市| 柯坪县| 内丘县| 大化| 纳雍县| 普格县| 鲁山县| 辽阳县| 镶黄旗| 博野县| 梓潼县| 西乌珠穆沁旗| 金乡县| 吉安县| 西乡县| 晋江市| 宜君县|