用java写个部门的树结构
以下是使用Java编写的部门树结构示例代码:
import java.util.ArrayList;
import java.util.List;
public class Department {
private String name;
private List<Department> subDepartments;
public Department(String name) {
this.name = name;
this.subDepartments = new ArrayList<>();
}
public String getName() {
return name;
}
public void addSubDepartment(Department subDepartment) {
subDepartments.add(subDepartment);
}
public List<Department> getSubDepartments() {
return subDepartments;
}
public void printDepartmentTree(int level) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < level; i++) {
sb.append("-");
}
System.out.println(sb.toString() + name);
for (Department subDepartment : subDepartments) {
subDepartment.printDepartmentTree(level + 1);
}
}
public static void main(String[] args) {
Department root = new Department("Company");
Department department1 = new Department("Department 1");
Department department2 = new Department("Department 2");
Department department3 = new Department("Department 3");
root.addSubDepartment(department1);
root.addSubDepartment(department2);
department1.addSubDepartment(department3);
root.printDepartmentTree(0);
}
}
在这个示例代码中,Department类表示一个部门,包含名称和子部门列表。printDepartmentTree()方法打印出整个部门树结构,使用递归实现。在main()方法中创建了一个根部门和三个子部门,并将它们添加到根部门和一个子部门中。最后调用printDepartmentTree()方法打印出部门树结构
原文地址: http://www.cveoy.top/t/topic/cie1 著作权归作者所有。请勿转载和采集!