我有以下结构:
public class User ...
<User> location;
<List<User>> program;
List<List<User>>> project;
List<List<List<User>>>> team;
上述结构意味着用户 - &gt;地点 - &gt;计划 - &gt;项目 - &gt;团队。换句话说,每个用户都属于mutlipple locations。在每个位置,他都链接到多个程序。每个这样的程序都有多个项目。每个项目都与几个团队相关联。
现在我的问题是这个数据结构的任何其他替代方案。我认为上述结构根本没有效率,并且检索值将是乏味的。因此,建议一个合适但有效的替代方案。
答案 0 :(得分:3)
这看起来像一个糟糕的设计。
如果程序包含List
User
个,请定义具有Program
实例变量的List<User>
类。而不是List<User> program;
,您将拥有Program program;
。
如果项目包含List
个程序,请定义具有Project
实例变量的List<Program>
类。而不是List<List<User>>> project;
,您将拥有Project project;
。
如果团队包含List
项目,请定义具有Team
实例变量的List<Project>
类。而不是List<List<List<User>>>> team;
,您将拥有Team team;
。