Mega Code Archive

 
Categories / VB.Net Tutorial / Collections
 

Array Resize

Public Class Tester     Public Shared Sub Main         Dim result As New System.Text.StringBuilder         Dim arrayInsert() As String = {"O", "A", "G", "B", "B"}         ' ----- Show the contents before insertion.         result.AppendLine("Before insertion:")         For Each fruit As String In arrayInsert             result.AppendLine(fruit)         Next fruit         ' ----- Insert more fruit.         InsertArrayElement(Of String)(arrayInsert, 2, "Lemons")         ' ----- Show the contents after insertion.         result.AppendLine()         result.AppendLine("After insertion:")         For Each fruit As String In arrayInsert             result.AppendLine(fruit)         Next fruit         Console.WriteLine(result.ToString())     End Sub     Public Shared Sub InsertArrayElement(Of T)( _           ByRef sourceArray() As T, _           ByVal insertIndex As Integer, _           ByVal newValue As T)         Dim newPosition As Integer         Dim counter As Integer         newPosition = insertIndex         If (newPosition < 0) Then newPosition = 0         If (newPosition > sourceArray.Length) Then _            newPosition = sourceArray.Length         Array.Resize(sourceArray, sourceArray.Length + 1)         For counter = sourceArray.Length - 2 To newPosition Step -1             sourceArray(counter + 1) = sourceArray(counter)         Next counter         sourceArray(newPosition) = newValue     End Sub End Class Before insertion: O A G B After insertion: O A Lemons G B