我有一个类,它有一个存储字符串值的字典和一个存储无符号 64 位整数的列表。如果它们的字典包含相同的键和值,则该类被认为等于另一个相同类型的类。
我还有一个包含此类的几个实例的静态列表。我想检查此列表中是否有重复的项目。如果有重复,我想合并他们的列表。
这是我认为的伪代码:
foreach (var item in StaticList)
{
if (item.Equals(anotherItem)) // i.e., dictionaries are equal
{
item.UInt64List.AddRange(anotherItem.UInt64List);
StaticList.Remove(anotherItem);
}
}
如果不借助最新框架添加的功能(我的目标框架是 .NET 2.0,所以没有花哨的 Union、Intersect 等),我如何才能做到这一点?
注意:我已经想出了如何检查两个字典是否相等,我想找到重复项并将它们合并。