¿Qué es UBound y LBound en Visual Basic?

Por jaime avelar
¿Qué es UBound y LBound en Visual Basic?
Ryan McVay/Photodisc/Getty Images

Incorporar arreglos en tu aplicación de Visual Basic (VB) puede volverse muy útil si sabes cómo usarlos. VB es un lenguaje de programación de computadoras diseñado por Microsoft para desarrollar aplicaciones web, móviles y de escritorio. Un arreglo es un conjunto de valores relacionados lógicamente entre sí, como el número de condados en cada estado del país. Puedes usar las funciones UBound y LBound para determinar la dimensión de un arreglo.

Definición

La función UBound devuelve el valor del subíndice más alto disponible para la dimensión indicada de un arreglo. La función LBound hace lo opuesto, ya que devuelve el subíndice más bajo disponible para la dimensión indicada de un arreglo. El valor devuelto de ambas funciones es un dato de tipo entero. Si el arreglo tiene solamente un elemento, UBound retorna un 0. La función LBound siempre retorna 0 en tanto el arreglo haya sido inicializado, incluso si no tiene elementos.

Dimensiones de los arreglos

Cuando un arreglo utiliza un índice se dice que es unidimensional. Un arreglo multidimensional usa más de un índice o subíndice. También puedes declarar los llamados arreglos de arreglos o arreglos irregulares. Estos pueden ser unidimensionales o multidimensionales al igual que los elementos definidos. Por ejemplo, si declaras un arreglo bidimensional de meses, un subíndice representa meses y el otro días. Los meses tienen un número diferente de días, por lo tanto tus elementos no formarán un arreglo rectangular bidimensional. En VB el arreglo sería declarado como se muestra a continuación:

Dim monthsArray(11, 30) As String

Determinación de la dimensión máxima

Los subíndices comienzan en 0 para cada arreglo y el máximo se define por el número que escribes en el arreglo para cada subíndice. Puedes declarar un arreglo multidimensional de tipo Byte usando la siguiente sintaxis:

Dim a (200, 10, 2) As Byte

Puedes obtener la longitud del arreglo por cada subíndice usando la función UBound. La sintaxis "Ubound(a, 1)" [sin comillas] retorna un valor de "200". Cambia la posición del subíndice a "2" y el resultado será "10". Para obtener el tamaño del tercer subíndice, cambia la posición a "3".

Determinación de la dimensión mínima

En los arreglos los subíndices siempre comienzan en 0, por lo tanto el subíndice más pequeño disponible para cada dimensión siempre es 0. Declara el siguiente arreglo de tipo Byte y usa la función LBound para obtener el subíndice más pequeño disponible:

Dim a (200, 10, 2) As Byte

Para determinar el valor más pequeño del primer subíndice usa la sintaxis (LBound(a, 1)" [sin las comillas] para obtener 0 como resultado. Cambia el subíndice a "2" y la función también dará como resultado "0". Después cambia el subíndice a "3" y el valor retornado seguirá siendo "0".