Section 3.6. The Collection Object

   

3.6 The Collection Object

VB.NET implements a special object called the Collection object that acts as a container for objects of all types. In fact, Collection objects can hold other objects, as well as nonobject data.

In some ways, the Collection object is an object-oriented version of the Visual Basic array. It supports the following four methods :

Add

Adds an item to the collection. Along with the data itself, you can specify a key value by which the member can be referenced.

Count

Returns the number of items in the collection.

Item

Retrieves a member from the collection either by its index (or ordinal position in the collection) or by its key ( assuming that a key was provided when the item was added to the collection).

Remove

Deletes a member from the collection using the member's index or key.

For example, the following code defines a collection object named colStates to hold information about U.S. states and then adds two members to it, using the state's two-letter abbreviation as a key:

 Dim colStates As New Collection colStates.Add("New York", "NY") colStates.Add("Michigan", "MI") 

Like members of an array, the members of a collection can be iterated using the For Each...Next construct. Also like arrays, collection members are accessible by their index value, although the lower bound of a collection object's index is always 1.

Arrays and collections each have advantages and disadvantages. Some of the advantages of collections over arrays are:

  • New collection members can be inserted before or after an existing member in index order. Moreover, indexes are maintained automatically by VB, so we don't need to adjust the indexes manually.

  • Collection members can be referenced by key value. This feature makes collections similar to associative arrays (which are used by languages such as Perl).

Note that when deleting collection members by index, it is important to iterate though the indexes in reverse order because member deletion changes the indexes of other members.

   


VB.Net Language in a Nutshell
VB.NET Language in a Nutshell
ISBN: B00006L54Q
EAN: N/A
Year: 2002
Pages: 503

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net