Language Basics VB.Net

Imports System
public class MainClass
   Shared Sub Main()
        Dim A As Integer() = {1, 2, 3, 4, 5}
        Dim B As Integer()
        B = A
        Console.WriteLine("Initial state ArrayTests")
        Console.WriteLine("Are A and B the same? " + (A Is B).ToString())
        Console.WriteLine("Array A:")
        DisplayArray(A)
        Console.WriteLine("Array B")
        DisplayArray(B)
        FunctionPassArrayByReference1(B)
        Console.WriteLine("After FunctionPassArrayByReference1")
        Console.WriteLine("Are A and B the same? " + (A Is B).ToString())
        Console.WriteLine("Array A:")
        DisplayArray(A)
        Console.WriteLine("Array B")
        DisplayArray(B)
        A(0) = 1
        B = A
        FunctionPassArrayByReference2(B)
        Console.WriteLine("After FunctionPassArrayByReference2")
        Console.WriteLine("Are A and B the same? " + (A Is B).ToString())
        Console.WriteLine("Array A:")
        DisplayArray(A)
        Console.WriteLine("Array B")
        DisplayArray(B)
        A(0) = 1
        B = A
        FunctionPassArrayByValue1(B)
        Console.WriteLine("After FunctionPassArrayByValue1")
        Console.WriteLine("Are A and B the same? " + (A Is B).ToString())
        Console.WriteLine("Array A:")
        DisplayArray(A)
        Console.WriteLine("Array B")
        DisplayArray(B)
        A(0) = 1
        B = A
        FunctionPassArrayByValue2(B)
        Console.WriteLine("After FunctionPassArrayByValue2")
        Console.WriteLine("Are A and B the same? " + (A Is B).ToString())
        Console.WriteLine("Array A:")
        DisplayArray(A)
        Console.WriteLine("Array B")
        DisplayArray(B)
   End Sub
   Shared Public Sub FunctionPassArrayByReference1(ByRef Y As Integer())
        Y(0) = 5
    End Sub
   Shared Public Sub FunctionPassArrayByReference2(ByRef Y As Integer())
        Dim NewArray As Integer() = {2, 3, 4, 5, 6}
        Y = NewArray
    End Sub
   Shared Public Sub FunctionPassArrayByValue1(ByVal Y As Integer())
        Y(0) = 5
    End Sub
   Shared Public Sub FunctionPassArrayByValue2(ByVal Y As Integer())
        Dim NewArray As Integer() = {2, 3, 4, 5, 6}
        Y = NewArray
    End Sub
   Shared Public Sub DisplayArray(ByVal Y As Integer())
        Dim X As Integer
        For X = 0 To UBound(Y)
            Console.Write(Y(X).ToString)
            If X <> UBound(Y) Then
                Console.Write(", ")
            Else
                Console.WriteLine()
            End If
        Next
    End Sub
End Class