Cómo: Inicializar una matriz escalonada
Actualización: noviembre 2007
Al inicializar una variable de matriz escalonada, sólo puede especificar las longitudes de dimensión para la matriz del nivel superior. Existen varias maneras de hacerlo:
Para inicializar una variable de matriz escalonada
En la declaración de la variable de la matriz, especifique el límite superior del índice del nivel superior dentro del primer par de paréntesis, separado por comas. El ejemplo siguiente declara y crea una variable para contener una matriz escalonada de elementos Byte, especificando sólo el límite superior del nivel superior.
Dim rainfall(11)() As Byte
Tras la ejecución de esta instrucción, la matriz de la variable rainfall contiene 12 elementos, cada uno de los cuales es una matriz vacía de elementos Byte.
o bien
En la cláusula New, especifique el límite superior del índice del nivel superior dentro del primer par de paréntesis y proporcione llaves vacías ({}). El ejemplo siguiente declara y crea una variable para contener una matriz escalonada de elementos Short, especificando sólo el límite superior del nivel superior.
Dim snowfall()() As Short = New Short(11)() {}
Tras la ejecución de esta instrucción, la matriz de la variable snowfall contiene 12 elementos, cada uno de los cuales es una matriz vacía de elementos Short.
Nota: Puede inicializar el límite superior del índice del nivel superior solamente en un lugar. Si especifica un límite superior en los paréntesis que siguen al nombre de la variable de la matriz, no puede utilizar una cláusula New. Si especifica el límite superior en los paréntesis de la cláusula New, debe dejar vacíos los paréntesis que siguen al nombre de variable.
o bien
En la cláusula New, especifique el límite superior del índice del nivel dentro de los paréntesis y proporcione los valores de elementos dentro de llaves ({}). El ejemplo siguiente declara, crea e inicializa una variable para contener una matriz escalonada de elementos Char, especificando el límite superior del nivel superior y los valores. Tenga en cuenta las cláusulas New anidadas para inicializar las matrices del nivel inferior.
Dim decodeValues()() As Char = New Char(1)() {New Char() {"a"c, "b"c}, New Char() {"p"c, "q"c}}
Tras la ejecución de esta instrucción, la matriz de la variable decodeValues contiene dos elementos, cada uno de los cuales es una matriz Char de longitud 1 con el elemento en el índice 0 que contiene un valor inicializado. Si proporciona el límite superior del nivel superior y los valores, debe incluir un valor para cada elemento del nivel superior desde el índice 0 hasta el límite superior.
o bien
En la cláusula New, omita los paréntesis del nivel superior y proporcione los valores de elementos dentro de llaves ({}). El ejemplo siguiente declara, crea e inicializa una variable para contener una matriz escalonada de elementos Byte, especificando sólo los valores de elementos. Tenga en cuenta los dos niveles de llaves en la cláusula New.
Dim firstValues()() As Byte = {New Byte() {2, 1}, New Byte() {3, 0}}
Tras la ejecución de esta instrucción, la matriz de la variable firstValues tiene una longitud de 2, con elementos firstValues(0) y firstValues(1). Cada uno de los elementos se inicializa en una matriz Byte de dos elementos, el primero con los valores de elementos 2 y 1, y el segundo con los valores de elementos 3 y 0.
Vea también
Tareas
Cómo: Declarar una variable de matriz
Cómo: Crear una matriz de matrices
Cómo: Inicializar una variable de matriz
Cómo: Inicializar una matriz multidimensional
Solucionar problemas de matrices
Conceptos
Matrices escalonadas en Visual Basic
Escribir código conforme con CLS