u3d中两个dictionary的key相等但是使用dictionary1的key来索引dictionary2的value时却找不到key
时间: 2024-05-26 17:14:07 浏览: 47
这种情况通常是因为两个Dictionary中的Key虽然看起来相同,但实际上却不是同一个对象。在C#中,Dictionary的Key是以对象的引用作为标识的,所以如果两个Key虽然内容相同但引用不同,就不能用一个Dictionary的Key来索引另一个Dictionary的Value。
你可以使用Equals()方法来比较两个Key是否相等。如果你确定两个Key的内容相同,可以使用该方法来查找另一个Dictionary中对应的Value。如果你希望两个Key相等,不仅内容相同而且引用也相同,可以重写Key的Equals()和GetHashCode()方法,以便Dictionary可以正确比较Key的引用。
阅读全文