工作的需要用到了詞典,所以對 dictionary 進行了一次回歸,畢竟以前慣用的是雜湊,對於效能的比較,看了幾篇文章,大家的第一反應都是 dictionary,畢竟是泛型.....;但是畢竟實踐是證明真理的唯一標準。後面測試後會上對比結果。
//例項化 程式集:mscorlib 命名空間:using system.collections.generic;
//其它常見屬性和方法的說明:
//comparer:獲取用於確定字典中的鍵是否相等的 iequalitycomparer。
//count:獲取包含在 dictionary中的鍵/值對的數目。
//
//keys:獲取包含 dictionary中的鍵的集合。
//values:獲取包含 dictionary中的值的集合。
//add:將指定的鍵和值新增到字典中。
//clear:從 dictionary中移除所有的鍵和值。
//containskey:確定 dictionary是否包含指定的鍵。
//containsvalue:確定 dictionary是否包含特定值。
//getenumerator:返回迴圈訪問 dictionary的列舉數。
//gettype:獲取當前例項的 type。 (從 object 繼承。)
//remove:從 dictionary中移除所指定的鍵的值。
//tostring:返回表示當前 object的 string。 (從 object 繼承。)
//dictionary
mydic = new dictionary();
//鍵是唯一 值可任意
mydic.add(1, "小紅"
); mydic.add(
2, "小明"
); mydic.add(
3, "小張"
); mydic.add(
4, "小李"
);
//隨意輸出 這裡需要注意的一點是裡面對應的是健的值,並不是下標,這裡不存在[0]的情況 輸出值:
//通過keyvaluepair遍歷元素
foreach (keyvaluepair kvp in
mydic)
, value = ", kvp.key, kvp.value);
}
//緊遍歷key
foreach ( var key in
mydic.keys)
",key);
}
//緊遍歷value
foreach (var value in
mydic.values)
",value);
}
//獲取指定鍵的值
string s = string
.empty;
if (mydic.trygetvalue(2,out
s))
",s);
}console.readline();
對雜湊(hash)做了一些效能的測試,
C Dictionary類的使用
1 首先需要用到命名空間system.collection.generic 2 定義方法 dictionarydic new dictionary 其中鍵是唯一的,而值不是。鍵和值都可以是任何型別 3 使用方法 新增元素 dic.add name zhangsan 刪除所有元素 dic.clear ...
c Dictionary的遍歷和排序
c 遍歷的兩種方式 for和foreach for 需要指定首位資料 末尾資料 資料長度 for遍歷語句中可以改變資料的值 遍歷規則可以自定義,靈活性較高 foreach 需要實現ienumerator介面 在遍歷中不可以改變資料的值 遍歷規則只能是 但查詢效率較高 dictionary遍歷方式 d...
c Dictionary的遍歷和排序
c 遍歷的兩種方式 for和foreach for 需要指定首位資料 末尾資料 資料長度 for遍歷語句中可以改變資料的值 遍歷規則可以自定義,靈活性較高 foreach 需要實現ienumerator介面 在遍歷中不可以改變資料的值 遍歷規則只能是 但查詢效率較高 dictionary遍歷方式 d...