در دات نت فریم ورک System.Collection شامل چندین نوع از Collection ها می باشد.
انواع Collection ها به شرح زیر می باشد:
§ ArrayList: داینامیک است. در مورد Add دو متد Add و AddRange را دارد که AddRangeدیتا را به انتهای ArrayList اضافه می کند. البته از Insert کردن دیتا در یک محل خاص نیز ساپورت می کند که در این صورت دو متد Insert و InsertRange استفاده می شود. برای اضافه کردن محتوای یک آرایه یا هر آبجکتی که ICollection را Support کند، به Collection استفاده می شود. برای Remove کردن از ArrayList هم متدهای Remove, RemoveAt و RemoveRange استفاده می شود. توابع IndexOf ،Clear و contains نیز در مورد ArrayList استفاده می شوند.
§ SortedList
§ Queue
§ Stack
§ HashTable
§ BitArray
§ StringCollection
§ StringDictionary
§ ListDictionary
§ HybridDictionary
§ NameValueCollection
از متدهای مورد استفاده در صف Dequeue, Enqueue و Peek هستند.
متدهای مورد استفاده در Stack عبارتند از Push, Pop و Peek
Dictionary برای Mapp کردن Key به Value مورد استفاده قرار می گیرد. برای مثال برای map کردن آدرس ایمیل به نام هر شخص. با استفاده از hashTable این mapping ها ذخیره می شوند. مثال نام و آدرس ایمیل ها در زیر آورده شده است:
Hashtable emailLookup = new Hashtable();
emaillookup.Add(“aaa” , “bbb”) یا emailLookup[“aaa”]=”bbb”
SortedList هم از نوع Dictionary می باشد و داده های موجود در آن به صورت Sort شده می باشند. نمونه ای از SortedList به صورت زیر می باشد:
SortedList sort = new SortedList();
Sort[“First”]=”1st”
Sort[“second”]=”2”
Sort[“Fourth”]=“4”
وقتی محتوایkey وVaue این SortedList چاپ شود نتیجه به صورت زیر می شود:
First=”1st”
Fourth=”4”
Second=”2”
توجه شود که اگر در خط اول به صورت
SortedList sort = new SortedList(new DescendingComparer())
نوشته شده می بود، خروجی برعکس می شد یعنی اول Second بعد Fourth و بعد First می آمد.
متد Capacity تعداد آیتم های Allocate شده برای Collection را برمی گرداند. توجه شود که این با تعداد داده های موجود در آن که توسط Count برگردانده می شود متفاوت است.
به غیر از دیکشنری های استاندارد مانند Hashtable و SortedList دیکشنری های دیگری نیز مانند ListDictionary، HybrideDictionary و OrderedDictionary نیز وجود دارند.