Unlike arrays, the List collection type resizes dynamically.  If you are working with data where you would need to be resizing an array a lot then use a list instead.  It is ideal for linear collections that you don’t need to adjust using an index.

Good resources

http://www.dotnetperls.com/list

You need this namespace

using System.Collections.Generic;

Declaring

	List<byte> LogEvents = new List<byte>();
	//or for a class:
	List<LogEventClass> LogEvents = new List<LogEventClass>();

Adding Objects

	LogEventClass LogEvent1 = new LogEventClass();
	LogEvents.Add(LogEvent1);
Add Array
	LogEvents.AddRange(System.Text.Encoding.UTF8.GetBytes(NameText));

Removing Objects

Find the object index then

	LogEvents.RemoveAt(Index);

There is also RemoveRange or just Remove where you specify an exact match for it to find and remove.

Total Number Of Objects In A List

	for (Index = 0; Index < LogEvents.Count; Index++)
	{

Reading A List Item

Use an index as with an array.

	SomeVariable = LogEvents[Index];

Working Through A List

	foreach (LogEventClass LogEvent in LogEvents)
	{
	}

Does List contain a value?

	if (MyList.Contains(123))
	{
	}

Clear A List

	LogEvents.Clear();

Convert List To An Array

Use .ToArray();

Copy An Array To A List

	List<LogEventClass> LogEvents = new List<LogEventClass>(SomeArray);
Feel free to comment if you can add help to this page or point out issues and solutions you have found. I do not provide support on this site, if you need help with a problem head over to stack overflow.

Comments

Your email address will not be published. Required fields are marked *