Collection in .NET is a group of records treated as one logical unit. The .NET Framework provides specialized classes for data storage and retrieval. These classes provide support for stacks, queues, lists, and hash tables. Most collection classes implement the same interfaces, and these interfaces may be inherited to create new collection classes that fit more specialized data storage needs.
Collection Classes have the following properties:
- Collection classes are defined as part of the System.Collections or System.Collections.Generic namespace.
- Most collection classes derive from the interfaces ICollection, IComparer, IEnumerable, IList, IDictionary, and IDictionaryEnumerator and their generic equivalents.
- Using generic collection classes provides increased type-safety and in some cases can provide better performance, especially when storing value types. For more information, see Benefits of Generics.
There are four categories of collection:
- Index based collection – Help to get the record based on internally generated index for each collection. Examples:
- Key-value collection – Help to get the record by using user defined key. Examples:
b. Shorted List
- Prioritized collection: Access the elements based on specific sequence like FIFO or LIFO. Examples:
- Specialized collection. Examples:
a. String Collections
b. Hybrid dictionary – Start as list but later as hashtable