Cómo: Inicializar una variable de matriz
Actualización: noviembre 2007
Puede inicializar una matriz al mismo tiempo que la crea, como parte de la cláusula New (Visual Basic). También puede inicializarla en instrucciones de asignación subsiguientes.
Los aspectos de una matriz que puede inicializar son los siguientes:
Los límites superiores del índice que especifican las longitudes de las dimensiones de la matriz
Los valores de algunos o de todos los elementos de la matriz
Puede inicializar uno de éstos aspectos sin inicializar otros. Sin embargo, si proporciona valores de elementos pero no los límites superiores, el número de valores proporcionados determina los límites superiores.
Para inicializar una matriz en la cláusula New en el momento de la creación
En la cláusula New, especifique el límite superior del índice dentro de paréntesis y proporcione los valores de elementos dentro de llaves ({}). El ejemplo siguiente declara, crea e inicializa una variable para contener una matriz con elementos de Char (Tipo de datos, Visual Basic), especificando el límite superior y los valores.
Dim testChars As Char() = New Char(2) {"%"c, "&"c, "@"c}
Tras la ejecución de esta instrucción, la matriz de la variable testChars tiene una longitud de 3, con elementos desde el índice 0 hasta el 2 que contienen valores inicializados. Si proporciona el límite superior y los valores, debe incluir un valor para cada elemento desde el índice 0 hasta el límite superior.
Tenga en cuenta el carácter c de tipo literal, que fuerza un literal de carácter para que sea del tipo de datos Char. De forma predeterminada, si no hay ningún carácter de tipo, un literal incluido entre comillas String usa (" ").
No tiene que especificar el límite superior del índice si proporciona valores de elementos en la cláusula New. El ejemplo siguiente declara, crea e inicializa una variable para contener una matriz con elementos de Boolean (Tipo de datos, Visual Basic), especificando sólo los valores de elementos.
Dim answers As Boolean() = New Boolean() {True, True, False, True}
Tras la ejecución de esta instrucción, la matriz de la variable answers tiene una longitud de 4, con elementos desde el índice 0 hasta el 3 que contienen valores inicializados.
Puede inicializar el límite superior del índice sin inicializar ningún elemento. Si crea una matriz de esta forma, debe usar una instrucción de asignación subsiguiente para inicializar cada valor de elemento.
Para inicializar una matriz en instrucciones de asignación subsiguientes
Especifique el límite superior del índice en la declaración de la variable de matriz.
Utilice una o más instrucciones de asignación, cada una de las cuales asignan un valor a uno de los elementos de la matriz. El ejemplo siguiente declara y crea una variable para contener una matriz con elementos de String (Tipo de datos, Visual Basic) y proporciona dos valores de elementos en instrucciones subsiguientes.
Dim comments(30) As String comments(0) = "This is the first comment." comments(5) = "This is the sixth comment."
Tras la ejecución de estas instrucciones, la matriz de la variable comments tiene una longitud de 31, con elementos en los índices 0 y 5 que contienen valores inicializados y los otros 29 elementos que contienen valores predeterminados. Si inicializa una matriz de esta forma, puede inicializar algunos elementos y omitir otros.
o bien
Utilice Instrucción ReDim (Visual Basic) para inicializar la longitud de la matriz.
ReDim comments(5)
Tras la ejecución de esta instrucción, la matriz de la variable comments tiene una longitud de 6, con todos los elementos que contienen valores predeterminados.
Nota: Puede inicializar el límite superior del índice solamente en una ubicación. Si especifica un límite superior en los paréntesis que siguen al nombre de la variable de la matriz, no puede usar 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.
Vea también
Tareas
Cómo: Declarar una variable de matriz
Cómo: Inicializar una matriz multidimensional
Cómo: Inicializar una matriz escalonada
Solucionar problemas de matrices
Conceptos
Información general sobre matrices en Visual Basic