服務熱線
153 8323 9821
泛型最常見的用途是泛型集合,命名空間System.Collections.Generic 中包含了一些基于泛型的集合類,使用泛型集合類可以提供更高的類型安全性,還有更高的
很多非泛型集合類都有對應的泛型集合類,下面是常用的非泛型集合類以及對應的泛型集合類:
| 非泛型集合類 | 泛型集合類 |
| ArrayList | List<T> |
| HashTable | DIctionary<T> |
| Queue | Queue<T> |
| Stack | Stack<T> |
| SortedList | SortedList<T> |
我們用的比較多的非泛型集合類主要有 ArrayList類 和 HashTable類。我們經常用HashTable 來存儲將要寫入到數據庫或者返回的
下面是簡單的例子,包括聲明,填充鍵值對,移除鍵值對,遍歷鍵值對
Dictionary<string, string> myDic = new Dictionary<string, string>();
myDic.Add("aaa", "111");
myDic.Add("bbb", "222");
myDic.Add("ccc", "333");
myDic.Add("ddd", "444");
//如果添加已經存在的鍵,add方法會拋出異常
try

{
myDic.Add("ddd","ddd");
}
catch (ArgumentException ex)

{
Console.WriteLine("此鍵已經存在:" + ex.Message);
}
//解決add()異常的方法是用ContainsKey()方法來判斷鍵是否存在
if (!myDic.ContainsKey("ddd"))

{
myDic.Add("ddd", "ddd");
}
else

{
Console.WriteLine("此鍵已經存在:");
}
//而使用索引器來負值時,如果建已經存在,就會修改已有的鍵的鍵值,而不會拋出異常
myDic ["ddd"]="ddd";
myDic["eee"] = "555";
//使用索引器來取值時,如果鍵不存在就會引發異常
下一篇:C#中字段和屬性的區別 .