c# 容器類簡介


C# 中主要有兩類容器:一個是 System.Array 類(參閱:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemarrayclasstopic.asp),類似 STL 中的 Vector;另一類是集合。集合還可以細分成功能不同的幾個容器。
  C# 1.0 的集合類的容器全部在 System.Collections 名字空間下。(參閱:http://msdn2.microsoft.com/en-us/library/k166wx47(en-us,VS.80).aspx)其中實現好的容器有:ArrayList,BitArray,Hashtable,Queue,SortedList,Stack 。名字空間中的其它類,比如 Comparer 等,是用來幫助實現容器和接口的,就不把他們算作容器了。
  C# 2.0 由於增添了對泛型編程的支持,它又新增了一個名字空間 System.Collections.Generic,存放所有支持泛型的各種集合類的容器。(參閱:http://msdn2.microsoft.com/en-us/library/system.collections.generic)支持泛型的集合類容器有:Dictionary,LinkedList,List,Queue,SortedDictionary,SortedList,Stack。與之對比對比,STL中實現的容器有:Vector,Deque,List,Set/Multiset,Map/Multimap,Stack,Queue,Bitset。


  下面主要介紹一下,C# 支持范型的容器。
  Array 顧名思義,提供了數組容器和操作,如查找、排序等。類似於STL中的 Vector。其聲明如下:
  public abstract class Array : ICloneable, IList, ICollection, IEnumerable
  Array 與STL中的 Vector 和 C# 中的其它容器不同之處,它不需要特別的把變量用 Array 類來聲明,直接在元素類型后加中括號就可以把變量指定為是 Array 容器。例如聲明一個元素數據類型為int的數組容器用一下語句:int[] myIntArray = new int[5] { 1, 2, 3, 4, 5 }; 語句中的 myIntArray 即成為一個數組容器。
  Dictionary 與 STL中的 Map/Multimap 相類似。Ditctionary 是兩個類型參數(健和值)的集合。
  List, SortedList,與 STL中的 List 類似,提供鏈表容器和操作。
  Queue與 STL中的 Queue 相類似。是元素先進后出的集合。
  Stack與 STL中的 Stack 相類似。是元素先進先出的集合。


本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/xiaoyuemian/archive/2008/09/21/2958077.aspx


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM