asp.net集合與列表小筆記

c979170768發表於2011-11-08

System.Collection.Generics命令空間中,包含大量類和介面,其中的介面也都模擬了System.Collections名稱空間下相應的非泛型型別。

如:

ICollection<T>
IComparer<T>
 IDictionary<TKey,TValue>                 //泛型字典
 IEnumerable<T>
 IEnumerator<T>
 IList<T>                                                         //泛型列表

那下面來看看怎樣來定義一個泛型方法呢?

public void Swap<T>(ref  T a,ref T b)

{

//裡面寫函式體就可以了

 

}

T這裡的T相當於Object型別了

對了我們除了這些之外還可以建立泛型的集合Queue<T> 和Stack<T>

使用泛型有什麼好外呢?下面我們來看下吧?

大家一定都知道ArrayList 是一個使用起來非常方便的集合類,無需進行修改即可用來儲存任何引用或值型別。我們可以向其中.add任何型別的資料但是,新增到 ArrayList 中的任何引用或值型別都將隱式地向上強制轉換為 Object。如果項是值型別,則必須在將其新增到列表中時進行裝箱操作,在檢索時進行取消裝箱操作。強制轉換以及裝箱和取消裝箱操作都會降低效能;在必須對大型集合進行迴圈訪問的情況下,裝箱和取消裝箱的影響非常明顯。同這也導致了其不是十分的安全

 

 

相關文章