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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

有什么更有效的方法:Dictionary TryGetValue或ContainsKey

有什么更有效的方法:Dictionary TryGetValue或ContainsKey

慕后森 2019-11-11 12:54:42
從MSDN在Dictionary.TryGetValue方法上的條目:此方法結(jié)合了ContainsKey方法和Item屬性的功能。如果找不到鍵,則value參數(shù)將為值類型TValue獲取適當(dāng)?shù)哪J(rèn)值;否則,值為0。例如,對(duì)于整數(shù)類型,0(零),對(duì)于布爾類型,false(假),對(duì)于引用類型,null。如果您的代碼經(jīng)常嘗試訪問(wèn)不在字典中的鍵,請(qǐng)使用TryGetValue方法。使用此方法比捕獲Item屬性引發(fā)的KeyNotFoundException更有效。此方法接近O(1)操作。從描述中,尚不清楚它是否比調(diào)用ContainsKey然后進(jìn)行查找更有效或更方便。TryGetValue只是先調(diào)用ContainsKey然后再實(shí)現(xiàn)Item 的實(shí)現(xiàn),還是實(shí)際上比通過(guò)一次查找更有效?換句話說(shuō),什么是更有效的(即哪個(gè)執(zhí)行的查詢更少):Dictionary<int,int> dict;//...//int ival;if(dict.ContainsKey(ikey)){  ival = dict[ikey];}else{  ival = default(int);}要么Dictionary<int,int> dict;//...//int ival;dict.TryGetValue(ikey, out ival);注意:我不是在尋找基準(zhǔn)!
查看完整描述

3 回答

?
白板的微信

TA貢獻(xiàn)1883條經(jīng)驗(yàn) 獲得超3個(gè)贊

TryGetValue 會(huì)更快。


ContainsKey使用與相同的檢查T(mén)ryGetValue,該檢查內(nèi)部引用實(shí)際的輸入位置。該Item屬性實(shí)際上具有與幾乎相同的代碼功能TryGetValue,除了它將引發(fā)異常而不返回false。


使用,ContainsKey后跟Item基本上是重復(fù)的查找功能,在這種情況下,這是大部分計(jì)算。


查看完整回答
反對(duì) 回復(fù) 2019-11-11
  • 3 回答
  • 0 關(guān)注
  • 1381 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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