在Java中模拟完整的外部联接

时间:2013-02-05 23:00:40

标签: java join outer-join

让我们说我在Java中有两个数组,我想在它们上预先形成一个完整的外连接(返回第三个数组)。

我将如何做到这一点?

1 个答案:

答案 0 :(得分:5)

我相信CollectionUtils from apache commons将拥有您需要的一切以及更多。

查看这些方法及其说明:

  

<强>联合

     

public static java.util.Collection union(java.util.Collection a,                                            java.util.Collection b)

     

返回包含给定集合的并集的Collection。   返回的Collection中每个元素的基数将是   等于两个元素中基数的最大值   给予收藏。

     

参数:

     

a - 第一个集合,不能为空

     

b - 第二个集合,不能为null返回:两个集合的并集

     

另见:Collection.addAll(java.util.Collection)

这可能就是你所需要的。但要做左右,我认为你使用的是:

  

<强>减去

     

public static java.util.Collection subtract(java.util.Collection a,                                               java.util.Collection b)

     

返回包含-b的新Collection。每个人的基数   返回的Collection中的元素e将是e中的e的基数   减去b中e的基数或零,以较大者为准。

     

参数:

     

a - 要减去的集合,不能为空

     

b - 要减去的集合,不能为null返回:一个新集合   结果

     

另见:Collection.removeAll(java.util.Collection)