C# Data Structures – ArrayList

In the last topic we talked about the Array.  It was mentioned that an Array was a fixed size and fixed typed.  The ArrayList is classified as a dynamic array. It implements the IList interface which simplifies add, insert, and remove commands.  ArrayList is typically thought of as old school and it slowly being replaced with a regular List<T> data structure.

Add:  pretty standard list style add function.

var arrayList1 = new ArrayList();

arrayList1.Add(1);
arrayList1.Add("quick");
arrayList1.Add("brown");

Insert: On the insert we need to pass in the position where the insert is to happen.  If you notice we do not need to insert new values add the end of the array.

arrayList1.Insert(5,"fox"); arrayList1.Insert(6, "jumps"); arrayList1.Insert(7, "over"); arrayList1.Insert(8, "the"); arrayList1.Insert(9, "lazy"); arrayList1.Insert(10, "dog");

arrayList1.Insert(11, "cat");

arrayList1.Insert(3, "the");

Remove:  This will scan the ArrayList and remove the item

 arrayList1.Remove("cat");

RemoveAt: Allows us to remove an item by index

arrayList1.RemoveAt(2);

The one setback of an ArrayList is that in order to get any value out of it, the item needs to have a cast assigned.

var value = (int)arrayList1[0] + (int)arrayList1[1];

string stringValue = string.Empty;
for (int i = 2; i < arrayList1.Count; i++)
{
    stringValue = (string)arrayList1[i];
}
Advertisements
This entry was posted in C# and tagged , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s