ArrayList<HiLifeFramePeriod> list1 = new ArrayList<>();
list1.add(new HiLifeFramePeriod("1234", "测试1", "20210518112033000", "20210520113000000"));
list1.add(new HiLifeFramePeriod("1235", "测试2", "20210518112033000", "20210520113000000"));
list1.add(new HiLifeFramePeriod("1236", "测试3", "20210518112033000", "20210520113000000"));
list1.add(new HiLifeFramePeriod("1237", "测试4", "20210518112033000", "20210520113000000"));
ArrayList<HiLifeFramePeriod> list2 = new ArrayList<>();
list2.add(new HiLifeFramePeriod("1234", "测试1_1", "20210518112033000", "20210520113000000", "3"));
list2.add(new HiLifeFramePeriod("1238", "测试5-2", "20210518112033000", "20210520113000000"));
list2.add(new HiLifeFramePeriod("1239", "测试6-3", "20210518112033000", "20210520113000000"));
list2.add(new HiLifeFramePeriod("1237", "测试4", "20210518112033000", "20210520113000000"));
List<HiLifeFramePeriod> list3 = new ArrayList<>();
for (int j = 0; j < list1.size(); j++) {
for (int i = 0; i < list2.size(); i++) {
if (list1.get(j).getId().equals(list2.get(i).getId())) {
HiLifeFramePeriod period = new HiLifeFramePeriod();
period.setId(list1.get(j).getId());
period.setTittle(list1.get(j).getTittle());
period.setStartTime(list1.get(j).getStartTime());
period.setEndTime(list1.get(j).getEndTime());
if (list2.get(i).getPeriod() != null) {
period.setPeriod(list2.get(i).getPeriod());
}
list3.add(period);
}
}
}
System.out.println(list3);
List<HiLifeFramePeriod> collect = list1.stream().filter(item -> !list3.stream().map(a -> a.getId()).collect(Collectors.toList()).contains(item.getId())).collect(Collectors.toList());
System.out.println(collect);
List<HiLifeFramePeriod> collect1 = list2.stream().filter(item -> !list3.stream().map(a -> a.getId()).collect(Collectors.toList()).contains(item.getId())).collect(Collectors.toList());
System.out.println(collect1);