第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

.NET HashTable與字典-字典可以這么快嗎?

.NET HashTable與字典-字典可以這么快嗎?

C#
回首憶惘然 2019-12-10 13:08:34
我試圖弄清楚何時以及為什么使用Dictionary或HashTable。我在這里做了一些搜索,發(fā)現(xiàn)人們談?wù)撐彝耆獾摹对~典》的一般優(yōu)勢,這導(dǎo)致裝箱和拆箱的優(yōu)勢略有提高。但是我也讀過Dictionary并不會總是按插入對象的順序返回對象,而是對其進(jìn)行排序。像HashTable一樣。據(jù)我了解,這導(dǎo)致HashTable在某些情況下會快得多。我的問題是,這些情況可能是什么?我在上面的假設(shè)中錯了嗎?您可能會使用哪種情況來選擇另一種情況(是的,最后一種情況有點(diǎn)模棱兩可)。
查看完整描述

3 回答

?
catspeake

TA貢獻(xiàn)1111條經(jīng)驗(yàn) 獲得超0個贊

System.Collections.Generic.Dictionary<TKey, TValue>和System.Collections.Hashtable類都在內(nèi)部維護(hù)哈希表數(shù)據(jù)結(jié)構(gòu)。它們都不能保證保留項(xiàng)目的順序。


除了裝箱/拆箱問題外,大多數(shù)情況下,它們應(yīng)該具有非常相似的性能。


它們之間的主要結(jié)構(gòu)差異是Dictionary依靠鏈接(為每個哈希表存儲桶維護(hù)一個項(xiàng)目列表)來解決沖突,而Hashtable使用重新哈希化來解決沖突(當(dāng)發(fā)生沖突時,嘗試使用另一個哈希函數(shù)將鍵映射到存儲桶) 。


Hashtable如果您針對.NET Framework 2.0+ ,則使用類幾乎沒有好處。有效地使它過時了Dictionary<TKey, TValue>。



查看完整回答
反對 回復(fù) 2019-12-11
?
FFIVE

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個贊

哈希表和字典之間的區(qū)別

字典:

  • 如果我們嘗試找到不存在的鍵,則字典返回錯誤。

  • 字典比哈希表更快,因?yàn)闆]有裝箱和拆箱。

  • 字典是一種通用類型,這意味著我們可以將其與任何數(shù)據(jù)類型一起使用。

哈希表:

  • 如果我們嘗試查找不存在的鍵,則Hashtable返回null。

  • 哈希表比字典慢,因?yàn)樗枰b箱和拆箱。

  • 哈希表不是通用類型,



查看完整回答
反對 回復(fù) 2019-12-11
  • 3 回答
  • 0 關(guān)注
  • 272 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號