Visual Basic .NET - ArrayList

In VB.NET, an ArrayList is a collection of objects that can be dynamically resized during runtime. It is a powerful data structure that allows you to store and manipulate a list of items. An ArrayList can hold elements of any data type, including strings, integers, objects, and so on.

To use an ArrayList, you must first import the System.Collections namespace, which contains the ArrayList class. 

Imports System.Collections
' Create a new ArrayList
Dim list As New ArrayList()

Now that you have created an ArrayList object, you can add items to it using the Add() method. Here is an example:

' Add items to the list
list.Add("Apple")
list.Add("Banana")
list.Add("Cherry")

You can also insert an item at a specific index using the Insert() method, and remove an item using the Remove() method:

' Insert an item at index 1
list.Insert(1, "Grapes")
' Remove the item at index 2
list.Remove("Cherry")

To access the elements of an ArrayList, you can use the Item property, which returns the item at a specified index. Here is an example:

' Get the item at index 0
Dim item As String = list(0)

You can also use the Count property to get the number of items in the ArrayList:

' Get the number of items in the list
Dim count As Integer = list.Count

Other useful methods of the ArrayList class include:

  • Clear(): removes all items from the ArrayList
  • Contains(): determines whether an item is in the ArrayList
  • IndexOf(): returns the index of the first occurrence of an item in the ArrayList
  • Sort(): sorts the items in the ArrayList

Here is an example of using the Contains() method:

' Check if the list contains an item
If list.Contains("Apple") Then
    Console.WriteLine("The list contains an Apple!")
End If

Adding and Removing Elements:

' Create a new ArrayList
Dim myArrayList As New ArrayList()
' Add elements to the ArrayList
myArrayList.Add("Apple")
myArrayList.Add("Banana")
myArrayList.Add("Cherry")
' Remove an element from the ArrayList
myArrayList.Remove("Banana")
' Print the elements of the ArrayList
For Each element As String In myArrayList
    Console.WriteLine(element)
Next

Sorting an ArrayList:

' Create a new ArrayList
Dim myArrayList As New ArrayList()
' Add elements to the ArrayList
myArrayList.Add("Cherry")
myArrayList.Add("Apple")
myArrayList.Add("Banana")
' Sort the ArrayList
myArrayList.Sort()
' Print the elements of the ArrayList
For Each element As String In myArrayList
    Console.WriteLine(element)
Next

Checking if an element exists in the ArrayList:

' Create a new ArrayList
Dim myArrayList As New ArrayList()
' Add elements to the ArrayList
myArrayList.Add("Apple")
myArrayList.Add("Banana")
myArrayList.Add("Cherry")
' Check if an element exists in the ArrayList
If myArrayList.Contains("Banana") Then
    Console.WriteLine("Banana is in the ArrayList")
Else
    Console.WriteLine("Banana is not in the ArrayList")
End If

Converting an ArrayList to an Array:

' Create a new ArrayList
Dim myArrayList As New ArrayList()
' Add elements to the ArrayList
myArrayList.Add("Apple")
myArrayList.Add("Banana")
myArrayList.Add("Cherry")
' Convert the ArrayList to an Array
Dim myArray As String() = CType(myArrayList.ToArray(GetType(String)), String())
' Print the elements of the Array
For Each element As String In myArray
    Console.WriteLine(element)
Next

ArrayLists can be very useful when you need to store and manipulate a list of items whose size may change during runtime. However, keep in mind that because ArrayLists can hold items of any data type, it can be less type-safe than other collections like List(Of T). Additionally, ArrayLists can be slower than other collections for large data sets because they use boxing and unboxing to store and retrieve values.