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 a key with a value. Typically, the key is short and the value is large.

You saw a handful of strings used in various places in this chapter, and you may wonder why we haven’t discussed strings directly yet. That’s because although strings can be used almost like any other primitive data type in their most basic form, the string class has a number of methods to it, so we deferred discussing them for a while. That’s about to change, though; Chapter 15 is all about strings, and how to make them do what you want.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset