Cómo: Crear una matriz con varias dimensiones

Actualización: noviembre 2007

Una matriz que utiliza más de un índice se denomina matriz multidimensional. Al igual que con una matriz unidimensional, se crea con una cláusula New (Visual Basic) y se asigna a la variable de matriz. Puede hacer esto como parte de la declaración de la matriz o en una instrucción de asignación subsiguiente.

Para crear una matriz multidimensional

  1. Coloque el número adecuado de comas dentro de los paréntesis que siguen al nombre de variable. Debe tener una coma menos que el número de dimensiones.

  2. Coloque el número adecuado de comas dentro de los paréntesis en la cláusula New. No necesita comas dentro de las llaves ({}) si no proporciona ningún valor de elemento.

    El ejemplo siguiente declara una variable para que contenga una matriz bidimensional con elementos de Double (Tipo de datos, Visual Basic), crea la matriz y la asigna a la variable.

    Dim weights(,) As Double = New Double(,) {}
    

    Tras la ejecución de esta instrucción, la matriz de la variable weights tiene una longitud de 0.

    5dk93f6e.alert_note(es-es,VS.90).gifNota:

    Cuando se agregan dimensiones a una matriz, el espacio total necesario para guardar la matriz aumenta considerablemente; por ello, debe utilizar las matrices multidimensionales con prudencia.

Para trabajar de forma eficaz con una matriz multidimensional

  • Agréguela a un bucle For anidado.

    En el siguiente ejemplo se inicializan todos los elementos de matrix con valores comprendidos entre 0 y 99, según sus posiciones en la matriz.

    Dim matrix(9, 9) As Double
    Dim maxDim0 As Integer = UBound(matrix, 1)
    Dim maxDim1 As Integer = UBound(matrix, 2)
    For i As Integer = 0 To maxDim0
        For j As Integer = 0 To maxDim1
            matrix(i, j) = (i * 10) + j
        Next j
    Next i
    

    Una matriz multidimensional no es lo mismo que una matriz escalonada. Para obtener más información, consulte Cómo: Crear una matriz de matrices.

Adiciones de comunidad

Mostrar: