我上课ViewPartner.java。该类如下所示

public class ViewPartner {
    private Integer id;
    //GET, SET
    //Other properties
}


我有两个List<ViewPartner>,例如lst1lst2,我需要通过以下方式将它们组合:
如果在ViewPartnerid中都存在一个具有相同lst1lst2,我们将从ViewPartner中放入lst1,否则从两个列表中放入。

我正在使用apache commonsgoogle guava ...也许有一些即时方法?

在这里严格使用List对我来说并不重要。

最佳答案

您可以创建一个唯一项目列表,如下所示:

Set<ViewPartner> union = new HashSet<ViewPartner>( list1 );
union.addAll( list2 );


由于union不允许重复值,因此Collection(Set)Set现在将在两个列表中具有唯一项。

此外,您还需要在Object.equals()类中为成员Object.hashCode()实现ViewPartnerid方法。

10-06 14:42