Java-在2个类之间创建“多对多”关系

时间:2018-12-03 09:28:39

标签: java many-to-many

我将基于一个示例尝试解释我的问题:

我们有一类叫“ 汽车”,另一类叫“ 工人”。

一辆汽车由多名工人建造,而一名工人却制造了多辆汽车。

我的问题是:

我如何在这两个类之间创建某种“多对多”关系,例如通常与数据库一起使用,而不导入除 java.lang。*和java.io. *软件包,这意味着“列表”因此被排除在外,因为它位于java.util。*

预先感谢:)


编辑以进一步解释:

在数据库中,通常您有第三个表来拆分此“ m-t-m”关系,因此我想到了这张照片上的类似内容。 enter image description here 这可能吗?

1 个答案:

答案 0 :(得分:4)

很明显,在这种情况下,列表是最佳选择,但是如果您不能使用它们,则可以使用数组,如下所示:

class Car {  
   private Worker[] builtBy;
   ...  
}

class Worker {  
   private Car[] carsBuilt;
   ...  
}

但是,主要缺点是数组是固定大小的,因此,如果您需要向数组中添加的元素多于最初分配的数量,则必须创建一个新元素并将其内容复制到其中。