我正在寻找满足以下要求的最佳解决方案。
我有一个类似于ClassA
下面的课程
public class ClassA {
protected List<ClassA.PlanA> planA;
public List<ClassA.PlanA> getPricePlan() {
if (planA == null)
planA = new ArrayList<ClassA.PlanA>();
return this.planA;
}
public static class PlanA {
protected String code;
protected XMLGregorianCalendar startDate;
protected XMLGregorianCalendar endDate;
// Getters and setters for the above fields
}
}
我有两个对象(obj1, ojb2)
。ClassA
要求是合并两个对象并删除重复项。
例子:
ClassA obj1=[PlanA =[code=AAA, startDate=2010/12/10, endDate=2011/12/10], PlanA =[code=BBB, startDate=2010/12/10 endDate=<null>]]
ClassA obj2=[PlanA=[code=AAA, startDate=2011/12/10], PlanA= [code=CC, startDate=2011/12/10 endDate=<null>], PlanA= [code=BBB, startDate=2010/12/10 endDate=2011/12/10]]
合并后的结果应该是这样的:
ClassA obj3=[PlanA[code=AAA, startDate=2011/12/10], PlanA= [code=CC, startDate=2011/12/10 endDate=<null>],PlanA= [code=BBB, startDate=2010/12/10 endDate=<null>]}