我有一个由列表键的字典:C#列表作为字典键
private Dictionary<List<custom_obj>, string> Lookup;
我试图使用的containsKey,但它似乎并没有工作,我不知道为什么。 这里是我的Visual Studio即时窗口调试信息:
?Lookup.Keys.ElementAt(7)[0]
{custom_obj}
Direction: Down
SID: 2540
?Lookup.Keys.ElementAt(7)[1]
{custom_obj}
Direction: Down
SID: 2550
searchObject[0]
{custom_obj}
Direction: Down
SID: 2540
searchObject[1]
{custom_obj}
Direction: Down
SID: 2550
?Lookup.ContainsKey(searchObject)
false
在我的常识,那最后的containsKey应该是真实的。希望我在这里包含了足够的信息......任何想法?
谢谢!
GetHashCode缺少返回。 – 2014-12-16 18:45:46
快速提示:正如答案所暗示的,您不应该使用此比较器。 equals方法对顺序很敏感,但是散列方法不是。 – 2016-06-16 19:35:25