增強版字典DictionaryEx

2021-09-06 16:10:26 字數 3463 閱讀 1757

public

class dictionaryex: idictionary

///初始化 dictionaryex , key不存在時返回defaultvalue

/// ///

預設值 ///

比較鍵時要使用物件,如果為null則使用預設比較方法

public dictionaryex(tvalue defaultvalue, iequalitycomparercomparer)

///初始化 dictionaryex 唯讀集合, key不存在時返回defaultvalue

/// ///

預設值 ///

內部字典

public dictionaryex(tvalue defaultvalue, idictionarydictionary)

///初始化 dictionaryex, key不存在時返回defaultvalue

/// ///

預設值 ///

內部字典

///是否唯讀

public dictionaryex(tvalue defaultvalue, idictionarydictionary, bool

isreadonly)

///初始化 dictionaryex 設定getvalue委託,key不存在時執行委託,並加入集合

/// ///

獲取值的委託

public dictionaryex(convertergetvalue)

///初始化 dictionaryex 設定getvalue委託,key不存在時執行委託,並加入集合

/// ///

獲取值的委託

///比較鍵時要使用物件,如果為null則使用預設比較方法

public dictionaryex(convertergetvalue, iequalitycomparercomparer)

///初始化 dictionaryex 設定getvalue委託,key不存在時執行委託,並加入集合

/// ///

獲取值的委託

///集合是否限制外部修改

public dictionaryex(convertergetvalue, bool

isreadonly)

///初始化 dictionaryex 設定getvalue委託,key不存在時執行委託,並加入集合

/// ///

獲取值的委託

///比較鍵時要使用物件

///集合是否限制外部修改

public dictionaryex(convertergetvalue, iequalitycomparercomparer, bool

isreadonly)

///初始化 dictionaryex 設定getvalue委託,key不存在時執行委託,並加入集合

/// ///

獲取值的委託

///內部字典

public dictionaryex(convertergetvalue, idictionarydictionary)

///初始化 dictionaryex 設定getvalue委託,key不存在時執行委託,並加入集合

/// ///

獲取值的委託

///內部字典

///是否唯讀

public dictionaryex(convertergetvalue, idictionarydictionary, bool

isreadonly)

///初始化 dictionaryex 唯讀集合

/// ///

內部字典

public dictionaryex(idictionarydictionary)

#endregion

private

tvalue returnvalue(tkey key)

return

value;

default

:

throw

newkeynotfoundexception();}}

public

void

add(tkey key, tvalue value)

public

bool

containskey(tkey key)

public icollectionkeys

}public

bool

remove(tkey key)

public

bool trygetvalue(tkey key, out

tvalue value)

public icollectionvalues

}public tvalue this

[tkey key]

return

returnvalue(key);

}set }

public

void add(keyvaluepairitem)

public

void

clear()

public

bool contains(keyvaluepairitem)

public

void copyto(keyvaluepair array, int

arrayindex)

public

intcount

}public

bool isreadonly

public

bool remove(keyvaluepairitem)

public ienumerator>getenumerator()

system.collections.ienumerator system.collections.ienumerable.getenumerator()

}

view code

static

void main(string

args)

catch

(exception)

//建立唯讀鍵值對集合

var innerdict = new dictionary();

dict = new dictionaryex(innerdict);

innerdict.add(

"aaa

", "

aaa"

); console.writeline(dict[

"aaa

"]);

try

catch

(exception)

try

catch

(exception)

}

python 巢狀字典取值增強版

def getdictvalue d,code result if isinstance d,dict try value d code except exception as e pass for valuedd in d.values if isinstance valuedd,dict yie...

IntelliJ IDEA 便攜增強版

idea 全稱 intellij idea,是j a語言開發的整合環境,intellij在業界被公認為最好的j a開發工具之一,尤其在智慧型 助手 自動提示 重構 j2ee支援 各類版本工具 git svn github等 junit cvs整合 分析 創新的gui設計等方面的功能可以說是超常的。i...

python實現增強版ping

由於定位網路問題時,經常要ping,並且有時候要長時間同時ping多位址,系統自帶的ping不夠用 所以自己用python實現乙個,用py2exe編譯為exe程式後可以方便發布。import time import string import thread import os ping ip tim...