java 循环获取部门的上级部门
时间: 2023-10-19 22:18:37 浏览: 62
Java递归算法遍历部门代码示例
可以使用一个Map来存储每个部门的上级部门,然后通过循环逐层获取上级部门,直到最顶层部门。
假设有如下的部门关系:
部门A的上级部门是null
部门B的上级部门是A
部门C的上级部门是B
部门D的上级部门是A
部门E的上级部门是D
则可以使用如下的Java代码获取部门E的所有上级部门:
```
// 部门关系
Map<String, String> departmentMap = new HashMap<>();
departmentMap.put("A", null);
departmentMap.put("B", "A");
departmentMap.put("C", "B");
departmentMap.put("D", "A");
departmentMap.put("E", "D");
// 要查询的部门
String department = "E";
// 逐层获取上级部门
List<String> parentDepartments = new ArrayList<>();
String parentDepartment = departmentMap.get(department);
while (parentDepartment != null) {
parentDepartments.add(parentDepartment);
parentDepartment = departmentMap.get(parentDepartment);
}
// 输出结果
System.out.println("部门" + department + "的上级部门为:" + parentDepartments);
```
输出结果为:
```
部门E的上级部门为:[D, A]
```
阅读全文