如何使用IComparable 比较2列表

问题描述 投票:-4回答:1

例如:

var ExistingGroup = new List<Person>
{
new Person(1,"Rahul","Sharma"),
new Person(2,"Deepak","Jha"),
new Person(3,"Raj","Mishra"),
}

 var NewGroup = new List<Person>
{
new Person(4,"Jay","Mohan"),
new Person(2,"Dileep","Kumar"),
new Person(5,"Mohan","Lal"),
}

输出:

1 Removed
4 Added
2 Changed
3 Removed
5 Added

如何使用IComparable<T>获得此输出?

c# .net
1个回答
0
投票

实施IComparable对您没有帮助,因为它旨在实现订购,而不是用于更改跟踪。您将编写一个带有两个列表的方法:

  1. 迭代第一个列表,同时搜索另一个列表中的每个出现的“人员编号” - >给你删除的项目
  2. 检查两个列表中出现差异的人员 - >为您提供更改的项目
  3. 重复反过来 - >给你添加项目

你可以使用LINQ这样做。

© www.soinside.com 2019 - 2024. All rights reserved.