Curso de VisualBasic.NET.
Inicializar.
Los arrays de una dimensión no son muy frecuentes en programación. Lo más frecuente es encontrar arrays de dos dimensiones o de más dimensiones.
Para inicializar un array dimensional, hay que utilizar el signo (,) y declarar el tipo de dato que va a contener como se ha hecho hasta ahora.

Esta forma de declararlo especifica la dimensión del array, simplemente indica que estamos declarando un array bidimensional. Para establecer la dimensión utilizamos el método ReDim y entre paréntesis el número de filas y el número de columnas del array. En este caso creo un array de 2 dimensiones de una fila y dos columnas.

En este momento hemos creado el array bidimensional vacio. Si lo mostraramos nos devolvería una estructura vacía de array.
Para recorrer un array bidimensional, tienes que recorrer cada elemento del array igual que hacíamos en la parte teórica del curso, pero esta vez para cada dimensión. Por lo tanto si tenemos dos dimensiones, tendremos que usar dos bucles for, y por tanto declarar dos variables para los bucles.

Y también al no tener una longitud única, tenemos que usar el metodo GetUpperBound() para poder recorrer el array dimensional.

Pero claro, como es un elemento bidimensional, solo está recorriendo la primera parte del array, es decir la primera columna. Si ejecutaramos ahora el programa nos devolvería una pantalla vacía, primero porque no hemos declarado ningún valor para el array, y segundo porque solo hemos llamado a una parte del array.

Observa que ahora como tenemos que llamar a dos dimensiones es necesario establecer el valor de las dos dimensiones al final del Console.WriteLine(). Pero como además nos falta por llamar a la segunda dimensión, tenemos que anidar otro bucle for para poder conseguir los valores totales.

Como puedes ver devuelve todos los valores en cero, porque el array está vacio. Puedes agregarle valor al array y repetir la operación anterior para que te devuelva los valores del mismo. Para agregar valores y teniendo en cuenta un array bidimensional tienes que aagregar valores a las filas y las columnas de manera que como ahora tiene un valor específico, no hace falta redimensionar el array con ReDim y lo podemos quitar (si no lo quitaramos nos devolvería cero).

Redimensionar el array.
Los arrays multidimensionales también se pueden redimensionar usando ReDim o Preserve. Si utilizamos ReDim, podemos cambiar el valor de cualquiera de las dimensiónes, aunque de esta forma perderíamos los datos que contuviese el array. Con Preserve, solo podríamos cambiar la última dimensión del array, es decir la más cercana a la derecha en la declaración.
Otra cosa que tampoco podemos hacer con ReDim es cambiar el número de dimensiones de un array ni siquiera si lo eliminamos previamente con Erase.

Añadir contenido al array
También podemos añadir contenido al array de manera automática asignandole un valor y después mostrando dicho valor. Podemos asignar a todo el conjunto el valor deseado si después de llamar a los bucles les asignamos i=1, como ves en la imagen siguiente:

Si queremos que en lugar de 1, tenga un valor diferente, podemos asignar operadores a la variable i de la forma i += 1
para que cada valor siguiente sea un número superior al anterior.