C# 存在两个List,分别都有ID,现在需要比较两个List中的ID值,然后把具有相同ID值的数据取出,存放在一个新的List中
求大神此过程的代码 ,简单写出即可
public static > boolean compare(List a, List b) {
if(a.size() != b.size())
return false;
Collections.sort(a);
Collections.sort(b);
for(int i=0;i if......
答案就在这里:比较两个 List 的值是否相等
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?
这个好实现,下面这个函数拿去用。
///
/// 比较两个List并将相同值存入新List中
///
/// 要比较的第一个List
/// 要比较的第二个List
/// 一二中的相同值List
private void CompareTwoList(List wList1, List wList2, ref List wList3)
{
try
{
wList3 = new List();
for (int i = 0; i < wList1.Count; i++)
{
for (int j = 0; j < wList2.Count; j++)
{
if (wList1[i] == wList2[j])
{
if (!wList3.Contains(wList1[i])) //不添加重复值
wList3.Add(wList1[i]);
}
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
resultList = aList.FindAll(delegate(A a)
{
return bList.Find(delegate(B b)
{
return a.ID == b.ID;
}) == null ? true : false;
});