Dictionary的key如何確定唯一的

2021-07-04 13:57:10 字數 332 閱讀 9541

之前看過其他關於dictionary的key如何保證唯一的文章,大多的意思是根據記憶體的位址來確定,有一次的專案中,我以自定義的attribute作為key來儲存時發現,具有不同值的attribute作為key插入到dictionary時覆蓋了其他的物件。

經過debug,發現,被覆蓋的物件有乙個特性:1、tostring返回值相同。2、也是最重要的,hashcode值相同。

所以我嘗試override tostring和gethashcode方法,重寫debug,發現成功了。

我得出結論,dictionary的key根據記憶體位址來確定的確實是沒有錯的,因為hashcode本生也是具有字串唯一的特性。

Dictionary的基本用法

1.建立泛型雜湊表,然後加入元素 dictionary string string openwith newdictionary string string openwith.add txt notepad.exe openwith.add bmp paint.exe openwith.add di...

關於dictionary的操作

一 定義 字典是無序的 dic1 print dic1,type dic1 字典內的元素是由鍵值對組成,鍵應該是字串,值可以是任意型別 二 操作 1 增 改 增 dic1 dom 3,2 增加乙個鍵值對,如果已經存在就是修改 print dic1 dic1.setdefault weight 有鍵值...

C 中的Dictionary簡介

簡介 在c 中,dictionary提供快速的基於鍵值的元素查詢。當你有很多元素的時候可以使用它。它包含在system.collections.generic名空間中。在使用前,你必須宣告它的鍵型別和值型別。詳細說明 必須包含名空間system.collection.generic dictiona...