Summary

  • The .NET Framework provides a number of type-safe generic collections, including the List<T>, Stack<T>, Queue<T>, and Dictionary<Tkey><Tvalue>.

  • Generics allow the collection designer to create a single collection without regard for the type of object it will hold, but to allow the collection user to define, at compile time, which type the object will hold. This enlists the compiler in finding bugs; if you add an object of the wrong type to a collection, it will be found at compile time, not at runtime.

  • You are free to create your own generic collection types as well.

  • The .NET Framework provides a number of interfaces that collections must implement if they wish to act like the built-in collections (such as being iterated by a foreach loop).

  • An indexer allows you to access or assign objects to and from a collection just as you do with an array (for example, myCollection[5] = "hello").

  • Indexers need not be restricted to integers. It is common to create indexers that take a string to assign or retrieve a value.

  • All framework collections implement the Sort( ) method. If you want to be able to sort a collection of objects of a user-defined type, however, the defining class must implement the IComparable interface.

  • The generic list collection, List<T>, works like an array whose size is increased dynamically as you add elements.

  • The Queue<T> class is a first-in, first-out collection.

  • The Stack<T> class is a last-in, first-out collection.

  • A Dictionary<k,v> is a collection that associates ...

Get Learning C# 3.0 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.