我有包含字典和名称(字符串)的对象。我想循环遍历这些对象,比较它们的字典和名称,以及是否有任何字典和字典。名称是完全匹配,我想删除所有重复项,然后返回一个没有字典和列表的对象列表。名字匹配。
这是我到目前为止所做的:
private void removeDuplicates(List<MyObject> objectList)
{
List<Dictionary<string,string>> listOfObjDicts = new List<Dictionary<string,string>>();
List<string> nameList = new List<string>();
foreach(MyObject object in objectList)
{
nameList.Add(MyObject.name);
listOfObjDicts.Add(MyObject.dict);
}
//compare name & dictionary against all other objects, then remove any duplicates from objectList.
}
可以安全地假设即使是遍历对象列表的foreach循环的这种结构也不是很好 - 因为我想返回一个对象列表,而不是一个名称列表和一个字典列表。我非常坚持这一点。有些人提到过LINQ,但我真的没有阅读/理解LINQ语法的经验或能力。