我有一個整數數組作爲鍵和圖像作爲值的字典集合。在添加new int[]
之前,我需要檢查相同的密鑰是否已經存在。如何在使用ContainsKey方法的字典中檢查Int數組(鍵)?
我已經試過下面的代碼,但Dictionary.ContainsKey(int[])
方法總是會失敗,即使是相同的key
已經存在。
Dictionary<int[], Image> temp = new Dictionary<int[], Image>();
int[] rowcol = new int[]{rowIndex,colIndex};
if (!temp.ContainsKey(rowcol))
{
animatedImage = style.BackgroundImage;
temp.Add(rowcol, animatedImage);
}
請建議我如何檢查在Dictionary
的int[]
key
?
感謝
使用'元組'。 –
john
您正在傳遞包含相同項目的數組的差異實例,當然它們不會被視爲相同。 'new [] {1} == new [] {1}'也返回false。 – Rob
另請參閱https://stackoverflow.com/questions/263400/what-is-the-best-algorithm-for-an-overridden-system-object-gethashcode –