Page 35 : 36
Object-oriented Programming in C#
Collection Classes
* Collections - History and Overview
A historic View on Collection Programming
* Generic Collections in C#
Overview of Generic Collections in C#
The Interface
IEnumerable<T>
The Interface
ICollection<T>
The Interface
IList<T>
Overview of the class
Collection<T>
Sample use of class
Collection<T>
Specialization of Collections
Specialization of Collections - a realistic example
Overview of the class
List<T>
Sample use of class
List<T>
Sample use of the Find operations in
List<T>
Sample use of Sort in
List<T>
Sample use of BinarySearch in
List<T>
Overview of the class
LinkedList<T>
The class
LinkedListNode<T>
Sample use of class
LinkedList<T>
Time complexity overview: Collection classes
Using Collections through Interfaces
* Generic Dictionaries in C#
Dictionaries
Overview of Generic Dictionaries in C#
The interface
IDictionary<K,V>
Overview of the class
Dictionary<K,V>
Sample use of class
Dictionary<K,V>
Notes about Dictionary Classes
Time complexity overview: Dictionary classes
* Non-generic Collections in C#
The non-generic collection library in C#
Notes about non-generic Collections
* Patterns and Techniques
The Iterator Design Pattern
Making iterators with yield return
Iterator blocks and yield return
Making iterators with yield return
The
yield return
statement can be used to define iterators (enumerators) in an easy, high-level fashion
A collection of up to three instance variables of type T - with an iterator.
A sample iteration of the three instance variable collection.
The iterator behind a yield
The IntSequence Composite
The IntSequence Composite classes
The abstract class IntSequence - Revisited.
The class IntInterval - Revisited.
The class IntSingular - Revisited.
The class IntCompSeq - Revisited.
An application of the integer sequences.
Output of the integer sequence application program.
The AnimalFarm Collection
Animalfarm - GetGroup with yield return.
A sample client of AnimalFarm.
Program output.