两个list集合对象,根据某一A集合中对象id判断是否在另一个B集合对象的id中是否有重复,取A集合中有,B集合中没有的对象
/**
* <p> 二级菜单修改,新增没有菜单项id,删除的就是比全部的少id,修改的有菜单项id</p>
*
* @param args
*/
public static void main(String[] args) {
/**The paper come zhongjue shallow, and must know this to practice
* 数据库
*/
ArrayList<FloorElement> elements = new ArrayList<>();
FloorElement element1 = new FloorElement();
element1.setFloorId(1l);
FloorElement element2 = new FloorElement();
element2.setFloorId(2l);
FloorElement element3 = new FloorElement();
element3.setFloorId(3l);
elements.add(element1);
elements.add(element2);
elements.add(element3);
/**
* 页面
*/
ArrayList<SecondaryMenuItemsVo> itemsVos = new ArrayList<>();
//新增
SecondaryMenuItemsVo vo = new SecondaryMenuItemsVo();
SecondaryMenuItemsVo vo4 = new SecondaryMenuItemsVo();
vo4.setElementName("e");
itemsVos.add(vo4);
vo.setElementName("二级菜单");
//修改
SecondaryMenuItemsVo vo2 = new SecondaryMenuItemsVo();
vo2.setFloorId(3l);
itemsVos.add(vo);
itemsVos.add(vo2);
//为空的就是新增
List<SecondaryMenuItemsVo> newElement = itemsVos.stream().filter(x -> x.getFloorId() == null).collect(Collectors.toList());
// 共有的数据就是修改
//实际上,
List<Long> aIds = itemsVos.stream().map(SecondaryMenuItemsVo::getFloorId).collect(Collectors.toList());
//数据库
List<Long> bIds = elements.stream().map(FloorElement::getFloorId).collect(Collectors.toList());
List<Long> collect3 = aIds.stream().filter(num -> bIds.contains(num))
.collect(Collectors.toList());
bIds.removeAll(collect3);
//删除的元素
System.out.println(bIds);
}
---------------------------------------------------------------------------
国之殇,未敢忘!
南京大屠杀!
731部队!
(有关书籍《恶魔的饱食》)以及核污染水排海等一系列全无人性的操作,购买他们的食品和为它们提供帮助只会更加变本加厉的害你,呼吁大家不要购买日本相关产品
昭昭前事,惕惕后人
吾辈当自强,方使国不受他人之侮!
---------------------------------------------------------------------------
作者:三号小玩家
出处:https://www.cnblogs.com/q1359720840/
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。 版权信息