The
System.Collections.Specialized namespace contains specialized
and strongly-typed collections. Specialized Collections are the
customized .Net collection classes which are used for specific
purposes.
Four most important special collection classes which are commonly used are as follows:
- CollectionsUtil – CollectionsUtil class helps to Creates collections that ignore the case in strings. The methods of the CollectionsUtil class generate a case-insensitive instance of the collection using case-insensitive implementations of the hash code provider and the comparer. The resulting instance can be used like any other instances of that class, although it may behave differently.Example:
Hashtable ObjHash = CollectionsUtil.CreateCaseInsensitiveHashtable(); ObjHash.Add("mohan","he is a software developer"); string str = (string) ObjHash["MOHAN"]; MessageBox.Show(str);
- ListDictionary – ListDictionary implements IDictionary by using a singly linked list. It is smaller and faster than a Hashtable if the number of elements is 10 or less. So, it is recommended for collections that typically contain 10 items or less.Example:
ListDictionary ObjDic = new ListDictionary(); ObjDic.Add("manoj", "he is a software developer"); ObjDic.Add("ramesh", "he is a software developer");
- HybridDictionary – HybridDictionary implements IDictionary by using a ListDictionary while the collection is small, and then switching to a Hashtable when the collection gets large. It should be used in cases where the number of elements in a dictionary is unknown.If the initial size of the collection is greater than the optimal size for a ListDictionary, the collection is stored in a Hashtable right away to avoid the overhead of copying elements from the ListDictionary to a Hashtable.Example:
HybridDictionary ObjHybrid = new HybridDictionary(); ObjHybrid.Add("mohan", "he is a software developer"); ObjDic.Add("Raja", "he is a network administrator"); ObjDic.Add("ramesh", "he is a hardware engineer");
- StringCollection – StringCollection is a very special collection, which represents a collection of strings. StringCollection accepts a null reference (Nothing in Visual Basic) as a valid value and allows duplicate elements. String comparisons are case-sensitive. Indexes in this collection are zero-based.
Example: // Creates and initializes a new StringCollection.
StringCollection myCol = new StringCollection(); // Adds a range of elements from an array to the end of the StringCollection. String[] myArr = new String[] { "RED", "orange", "yellow", "RED", "green", "blue", "RED", "indigo", "violet", "RED" }; myCol.AddRange( myArr ); // Adds one element to the end of the StringCollection and inserts another at index 3. myCol.Add( "* white" ); myCol.Insert( 3, "* gray" ); // Removes one element from the StringCollection. myCol.Remove( "yellow" ); // Clears the entire collection. myCol.Clear();
This blog is really informative i really had fun reading it.
ReplyDeleteThanks Raul. Please keep in touch.
ReplyDelete