任何人都可以为我提供一个链接,以在 java 中构建树结构(可以有多个子结构)。
最佳答案
尝试使用这样的模型。
import java.util.ArrayList;
import java.util.List;
public class Employee {
private String id;
private Employee manager;
private List<Employee> directReports;
public Employee(String id){
this.id = id;
this.directReports = new ArrayList<Employee>();
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Employee getManager() {
return manager;
}
public void setManager(Employee manager) {
this.manager = manager;
}
public List<Employee> getDirectReports() {
return directReports;
}
public void setDirectReports(List<Employee> directReports) {
this.directReports = directReports;
}
}
这里你肯定需要经理字段,因为它给出了谁是经理
该员工的。 directReports 字段是可选的,您可以将其保留在
仅当您想将关系建模为双向关系时,即
如果您希望每个员工也知道哪些员工报告
对他/她(意味着该员工是他/她的直接下属的经理)。
现在,根据您刚刚获得的任何输入,构建正确的员工集
对象并确保它们以正确的方式相互关联(使用
manager 和 directReports 字段)。这就是我的建议。
还创建一些创建 Employee 实例的工厂类
(这个工厂类可以是 Employee 类本身)。
在使用给定 ID 创建员工之前,请确保
首先查找它是否存在。如果存在,则重复使用
它而不是创建一个新的(因为你不想有两个或
更多具有相同 id 的 Employee 实例)。
关于java - 构建 Java 树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20826326/