You are on page 1of 10

Arrays

Un array consiste en una lista de valores asociada a un identificador. Al


emplear una variable para contener ms de un dato, el modo de acceder a
los valores se consigue a travs de un ndice asociado a la variable, que
permite saber con qu elemento o posicin de la lista estamos tratando.
Otros nombres para referirnos a un array son matriz y vector, aunque en
este texto emplearemos el trmino array de forma genrica.
En este apartado vamos a realizar una introduccin muy elemental a los
arrays y su uso, que sirva al vector para obtener los conocimientos mnimos
necesarios para este tema dedicado al lenguaje. Dado que la gran potencia
de los arrays reside en su uso a travs de las caractersticas de orientacin a
objetos de que disponen, cubriremos los arrays en profundidad
posteriormente, dentro de un tema especfico en el que trataremos todos sus
aspectos principales.
Declaracin
Para declarar un array actuaremos prcticamente igual que para declarar
una variable normal, con la diferencia de que utilizaremos los parntesis
junto al nombre de la variable, para indicar que se trata de un array, y
opcionalmente, dentro de los parntesis, indicaremos el nmero de
elementos de que inicialmente va a constar el array. Tambin es posible,
asignar valores a los elementos en el mismomomento de su declaracin.
Debemos tener en cuenta a la hora de establecer el nmero de elementos,
que el primer ndice de un array es el cero, por lo que al ser creado, el
nmero real de elementos en un array ser el especificadoen la declaracin
ms uno.
La Figura 170 muestra la representacin de un array en un modo grfico.

Asignacin y obtencin de valores


Para asignar y obtener valores de los elementos de un array, actuaremos
igual que para una variable normal, pero empleando adems el ndice para
indicar qu posicin queremos manipular.
Sub Main()
' array con 4 elementos: de 0 a 3
Dim Nombres(3) As String
' asignar valores al array
Nombres(0) = "Ana"
Nombres(1) = "Pedro"
Nombres(2) = "Antonio"

Nombres(3) = "Laura"
' obtener valores de un array
Dim ValorA As String
Dim ValorB As String
ValorA = Nombres(1) ' Pedro
ValorB = Nombres(3) ' Laura
' mostrar los valores obtenidos del array
Console.WriteLine("Variables: ValorA --> {0}, ValorB --> {1}", ValorA,
ValorB)
Console.ReadLine()
End Sub

Recorrer un array
Para recorrer todos los elementos de un array emplearemos la estructura de
control For...Next, que ejecuta un bloque de cdigo un nmero
determinado de veces, y la funcin del lenguaje Ubound( ),que devuelve el
nmero de elementos del array pasado como parmetro.
Sub Main()
' crear un array y rellenarlo con valores
Dim Nombres(3) As String
Nombres(0) = "Ana"
Nombres(1) = "Pedro"
Nombres(2) = "Antonio"
Nombres(3) = "Laura"
' recorrer el array y mostrar el contenido
' de cada uno de sus elementos
Dim Contador As Integer
For Contador = 0 To UBound(Nombres)
Console.WriteLine("Posicin del array: {0}, valor: {1}", _
Contador, Nombres(Contador))
Next
Console.ReadLine()
End Sub

Constantes
Al igual que las variables, una constante es un elemento del lenguaje que
guarda un valor, pero que en este caso y como su propio nombre indica,
dicho valor ser permanente a lo largo de la ejecucin del programa, no
pudiendo ser modificado.
Para declarar una constante, debemos utilizar la palabra clave Const,
debiendo al mismo tiempo establecer el tipo de dato y asignarle valor.
Sub Main()
Const Color As String = "Azul"
Const ValorMoneda As Double = 120.48
End Sub
Si intentamos asignar un valor a una constante despus de su asignacin
inicial, el IDE nos subrayar la lnea con un aviso de error de escritura, y se
producir igualmente un error si intentamos ejecutar elprograma.
No es posible asignar valores a constantes despus de su creacin.
Conceptos mnimos sobre depuracin
Un depurador nos permite introducirnos dentro del cdigo de nuestro
programa durante la ejecucin del mismo, para observar qu es lo que est
ocurriendo: ejecutar lnea a lnea el programa, observar el valor de las
variables, etc., aspectos todos ellos fundamentales para el seguimiento de
errores y fallos en la lgica de la aplicacin.
VS.NET dispone de un excelente depurador; del que describiremos a
continuacin sus elementos ms bsicos, para que el lector pueda realizar
un seguimiento ms preciso de lo que sucede durante la ejecucin de su
aplicacin.
Tipificacin
La tipificacin de una variable es la operacin por la cual, al declarar una
variable, especificamos qu
clase de valores o tipo de datos vamos a poder almacenar en dicha variable.
En VB.NET utilizamos la palabra clave As seguida del nombre del tipo de
datos, para establecer el
tipo de una variable. Ver Cdigo fuente 51

Sub Main()
Dim Valor As String ' cadena de caracteres
Dim Cuenta As Integer ' numrico entero
Dim FhActual As Date ' fecha
End Sub
Cdigo fuente 51
La Tabla 5 muestra la relacin de tipos de datos disponibles en el lenguaje

Declaracin mltiple en lnea


En el caso de que tengamos que declarar ms de una variable del mismo
tipo, podemos declararlas todas en la misma lnea, separando cada una con
una coma e indicando al final de la lista el tipo de dato que van a tener
Dim Nombre, Apellidos, Ciudad As String
Con esta tcnica de declaracin, todas las variables de la lnea tienen el
mismo tipo de dato, ya que no es posible declarar mltiples variables en la
misma lnea que tengan distintos tipos de dato.

Asignacin de valor
Para asignar un valor a una variable utilizaremos el operador de asignacin:
el signo igual ( = ), situando a su izquierda la variable a asignar, y a su
derecha el valor
Dim Cuenta As Integer
Cuenta = 875
Cdigo fuente 53

Segn el tipo de dato de la variable, puede ser necesario el uso de


delimitadores para encerrar el valor que vamos a asignar.
Tipos numricos. Las variables de tipos de datos numricos no necesitan
delimitadores, se asigna directamente el nmero correspondiente. Si
necesitamos especificar decimales, utilizaremos el punto ( . ) como carcter
separador para los decimales
Cadenas de caracteres. En este caso es preciso encerrar la cadena entre
comillas dobles ( " ).
Fechas. Al asignar una fecha a una variable de este tipo, podemos
encerrar dicho valor entre el signo de almohadilla ( # ) o comillas dobles ( "
). El formato de fecha a utilizar depende del delimitador. Cuando usemos
almohadilla la fecha tendr el formato Mes/Da/Ao; mientras que cuando
usemos comillas dobles el formato ser Da/Mes/Ao.
Las fechas pueden contener adems informacin horario que
especificaremos en el formato Hora:Minutos:Segundos FranjaHoraria. En
el caso de que no indiquemos la franja horaria (AM/PM) y si estamos
utilizando el signo almohadilla como separador, el entorno insertar
automticamente los caracteres de franja horaria correspondientes.
Tipos lgicos. Las variables de este tipo slo pueden tener el valor True
(Verdadero) o False (Falso).
Adems de asignar valores como acabamos de explicar, podemos asignar el
contenido de una variable a otra o el resultado de una expresin, como
veremos ms adelante en el apartado dedicado a operadores
Sub Main()
Dim ImporteFac As Integer
Dim Precio As Double
Dim Valor As String
Dim FhActual As Date
Dim FhNueva As Date
Dim FhCompletaUno As Date
Dim FhCompletaDos As Date
Dim FhHora As Date

Dim Correcto As Boolean


ImporteFac = 875
Precio = 50.75
Valor = "mesa"
FhActual = #5/20/2001# ' mes/da/ao
FhNueva = "25/10/2001" ' dia/mes/ao
FhCompletaUno = #10/18/2001 9:30:00 AM#
FhCompletaDos = "7/11/2001 14:22:00"
FhHora = #5:40:00 PM#
Dim NuevaCadena As String
NuevaCadena = Valor ' asignar una variable a otra
Correcto = True
' mostrar variables en la consola
Console.WriteLine("Variable ImporteFac: {0}", ImporteFac)
Console.WriteLine("Variable Precio: {0}", Precio)
Console.WriteLine("Variable Valor: {0}", Valor)
Console.WriteLine("Variable FhActual: {0}", FhActual)
Console.WriteLine("Variable FhNueva: {0}", FhNueva)
Console.WriteLine("Variable FhCompletaUno: {0}", FhCompletaUno)
Console.WriteLine("Variable FhCompletaDos: {0}", FhCompletaDos)
Console.WriteLine("Variable FhHora: {0}", FhHora)
Console.WriteLine("Variable NuevaCadena: {0}", NuevaCadena)
Console.WriteLine("Variable Correcto: {0}", Correcto)
Valor inicial
Toda variable declarada toma un valor inicial por defecto, a no ser que
realicemos una asignacin de valor en el mismo momento de la
declaracin. A continuacin se muestran algunos valores de inicio en
funcin del tipo de dato que tenga la variable:
Numrico. Cero ( 0 ).
Cadena de caracteres. Cadena vaca ( "" ).
Fecha. 01/01/0001 0:00:00.
Lgico. Falso (False).
Objeto. Valor nulo (Nothing).

Sub Main()
Dim ImporteFac As Integer
Dim Valor As String
Dim FhActual As Date
Dim FhNueva As Date
Dim ValorLogico As Boolean
Dim UnObjeto As Object
' mostrar variables en la consola
Console.WriteLine("Variable ImporteFac: {0}", ImporteFac)
Console.WriteLine("Variable Valor: {0}", Valor)
Console.WriteLine("Variable FhActual: {0}", FhActual)
Console.WriteLine("Variable FhNueva: {0}", FhNueva)
Console.WriteLine("Variable ValorLogico: {0}", ValorLogico)
Console.WriteLine("Variable UnObjeto: {0}", UnObjeto)
Console.ReadLine()
End Sub
Declaracin obligatoria
Es obligatorio, por defecto, la declaracin de todas las variables que
vayamos a utilizar en el cdigo.
En el caso de que intentemos utilizar una variable no declarada, se
producir un error.
La declaracin de variables proporciona una mayor claridad al cdigo, ya
que de esta forma, sabremos en todo momento si un determinado
identificador corresponde a una variable de nuestro procedimiento, de un
parmetro, etc.
Mediante la instruccin Option Explicit, y sus modificadores On/Off,
podemos requerir o no la declaracin de variables dentro del programa.
Option Explicit On. Hace obligatoria la declaracin de variables. Opcin
por defecto.
Option Explicit Off. Hace que no sea obligatoria la declaracin de
variables.

Podemos aplicar esta instruccin para que tenga efecto a nivel de proyecto
y a nivel de fichero de cdigo.
Option Explicit a nivel de proyecto.
Para establecer Option Explicit a nivel de proyecto, debemos abrir la
ventana Explorador de soluciones, hacer clic en el nombre del proyecto, y a
continuacin pulsar el botn de propiedades en esa misma ventana. Esto
mostrar la ventana de propiedades del proyecto, en cuyo panel izquierdo
haremos clic sobre el elemento Generar. Finalmente abriremos la lista
desplegable del elemento Option Explicit, seleccionaremos un valor (On,
Off) y pulsaremos Aplicar y Aceptar.

You might also like