总是遇见 插入集合数据时 修改时会出现新增部分,想要删除部分的情况
类
数据
-
var stuList1 =new List<Students>();
for(var i=0;i<10;i++)
{
stuList1.add(new Students(){
Id=i,
Name=$"张{i}",
Age =10+i,
Gender = i%2==0?true:false
})
}
var stuList2 =new List<Students>();
for(var i=5;i<15;i++)
{
stuList2.add(new Students(){
Id=i,
Name=$"张{i}",
Age =10+i,
Gender = i%2==0?true:false
})
}
var addPermList = stuList1.Where(x => !stuList2.Any(e => e.Id == x.Id && e.Gender == x.Gender )).ToList();
Id=[10,11,12,13,14]
var deletePermList = stuList2.Where(x => !stuList1.Any(e => e.Id == x.Id && e.Gender == x.Gender)).ToList();
Id=[0,1,2,3,4]
var stuList3 =new List<Students>();
for(var i=5;i<15;i++)
{
stuList3.add(new Students(){
Id=2,
Name=$"张",
Age =10,
Gender = i%2==0?true:false
})
}
var stuList4 =new List<Students>();
HashSet<Students> set =new HashSet<Students>(stuList3);
stuList4.AddRange(set);
foreach (var item in stuList4)
{
Console.WriteLine(item .ToJsonString());
}
{
Id:"2",
Name:"张",
Age :"10",
Gender:true
}
{
Id:"2",
Name:"张",
Age :"10",
Gender:false
}