public class DEPT{
private long id;
private String name;
private List depts = new ArrayList();//存放DEPT 对象
private List users = new ArrayList();//存放USER 对象
pbulic user find(long id);//就是要实现的功能
.
.
.
}
public class User{
private long id;
private String name;
public DEPT parent;
}
假设DEPT 和 USER 类的每一个私有属性都定义了GET 和 SET 方法
在当前部门和子部门中查找给顶ID 的用户
pbulic user find(long id)
根据id 查找所有用户
------解决方案--------------------
因为有子部门,还有子子部门,肯定要用到递归了。
- Java code
import java.util.ArrayList;import java.util.List;public class DEPT { private long id; private String name; private List depts = new ArrayList(); private List users = new ArrayList(); public User find(long id) { User tmpUser = null; DEPT tmpDept = null; for(int i=0;i<users.size();i++) { tmpUser = (User)users.get(i); if(tmpUser.id == id) return tmpUser; } for(int i=0;i<depts.size();i++) { tmpDept = (DEPT)depts.get(i); tmpUser = tmpDept.find(id); if(tmpUser != null) return tmpUser; } return null; }}class User { public long id; private String name; public DEPT parent;}