Post on 25-Oct-2015
Visual Basic: el lenguajeVisual Basic: el lenguaje
VB .NET VB .NET Ing. Jonathan D. Nima RamosIng. Jonathan D. Nima Ramos
ContenidoContenido
Introducción a los tipos de datosIntroducción a los tipos de datosUso de variablesUso de variablesÁmbito de las variables Ámbito de las variables Convertir tipos de datosConvertir tipos de datosCrear y utilizar estructurasCrear y utilizar estructurasAlmacenar datos en matricesAlmacenar datos en matrices
Introducción a los tipos de Introducción a los tipos de datosdatos
El El tipo de datos tipo de datos de un elemento de de un elemento de programación hace referencia a la programación hace referencia a la clase de datos que puede contener y clase de datos que puede contener y a cómo se almacenan los datos. a cómo se almacenan los datos. El sistema de tipos comunes El sistema de tipos comunes ((Common Type System – CTSCommon Type System – CTS) define ) define los tipos de datos que soporta el los tipos de datos que soporta el Common Language Runtime. Common Language Runtime.
¿Qué es el sistema de tipos comunes?¿Qué es el sistema de tipos comunes?
El sistema de tipos comunes define El sistema de tipos comunes define cómo se declaran, utilizan y cómo se declaran, utilizan y gestionan los tipos en el Common gestionan los tipos en el Common Language Runtime. Language Runtime. Cada tipo de datos utilizado en Cada tipo de datos utilizado en Visual Basic .NET corresponde Visual Basic .NET corresponde directamente a un tipo definido en el directamente a un tipo definido en el sistema de tipos comunes. sistema de tipos comunes.
Sistema de tipos comunesSistema de tipos comunes
Tipos de datos predefinidos
Estructuras definidas por el usuario
Enumeraciones
Cadenas
Matrices
Clases
Tipos valorTipos valor Tipos referenciaTipos referencia
Sistema de tipos comunesSistema de tipos comunes
Tipo valor vs. Tipo Tipo valor vs. Tipo referenciareferencia
Una variable de Una variable de tipo valortipo valor contiene contiene directamente sus datos. directamente sus datos. Una variable de Una variable de tipo referenciatipo referencia contiene una contiene una referencia o puntero al valor de un objeto. Dos referencia o puntero al valor de un objeto. Dos variables de tipo referencia pueden referirse al variables de tipo referencia pueden referirse al mismo objeto, de modo que las operaciones en mismo objeto, de modo que las operaciones en una variable de tipo referencia pueden afectar una variable de tipo referencia pueden afectar al objeto referenciado por otra variable de tipo al objeto referenciado por otra variable de tipo referencia.referencia.
Tipos de datosTipos de datos
NaN: indica que no se puede definir el NaN: indica que no se puede definir el resultado de una operación: no es resultado de una operación: no es numérico, ni cero, ni infinito.numérico, ni cero, ni infinito.
Identificadores de tipos de Identificadores de tipos de datosdatos
No es necesario emplear la cláusula AS No es necesario emplear la cláusula AS para declarar un tipo.para declarar un tipo.Puede declararse con los caracteres de Puede declararse con los caracteres de declaracióndeclaraciónCaracteres de declaración:Caracteres de declaración:
Símbolo Tipo Ejemplo
$ String A$,nombre$
% Integer(Int32) Cta%
& Long(Int64) Diametier&
! Single Distancia!
# Double distExact#
@ Decimal Balance@
Cómo escoger un tipo de Cómo escoger un tipo de datosdatos
BooleanBoolean Condiciones de Verdadero o Falso
Condiciones de Verdadero o Falso
ValorValor VerdaderoVerdadero
EscogerEscogertipo de datos …tipo de datos …
EscogerEscogertipo de datos …tipo de datos … para gestionar …para gestionar …para gestionar …para gestionar … Tipo CTSTipo CTSTipo CTSTipo CTS EjemploEjemploEjemploEjemplo
Short, Integer,Long, Byte
Short, Integer,Long, Byte
EnterosEnteros ValorValor 23 (Entero)
23 (Entero)
Single, Double,Decimal
Single, Double,Decimal
Números con enterosy partes de fracciones
Números con enterosy partes de fracciones
ValorValor 9456,72(Decimal)
9456,72(Decimal)
DateDate Valores fecha y horaValores fecha y hora ValorValor 02/12/200312:30:42 A.M.
02/12/200312:30:42 A.M.
StringString Caracteres imprimibles yvisualizables en pantalla
Caracteres imprimibles yvisualizables en pantalla
ReferenciaReferencia “Casa”“Casa”
ObjectObject Un puntero al valor deun objeto
Un puntero al valor deun objeto
ReferenciaReferencia myClassmyPerson
myClassmyPerson
Cómo escoger un tipo de Cómo escoger un tipo de datosdatos
Si usted declara variables sin tipo de datos, se Si usted declara variables sin tipo de datos, se les otorga de forma predeterminada el tipo de les otorga de forma predeterminada el tipo de datos datos ObjectObject. . La especificación de tipos de datos para todas La especificación de tipos de datos para todas sus variables se denomina sus variables se denomina tipado fuertetipado fuerte. Es . Es recomendado porque: recomendado porque: Minimiza la cantidad de memoria que utiliza la Minimiza la cantidad de memoria que utiliza la
aplicación. aplicación. Permite al compilador realizar la verificación de tipos. Permite al compilador realizar la verificación de tipos. La ejecución del código es más rápida. La ejecución del código es más rápida.
¿Qué son las variables?¿Qué son las variables?
Las variables almacenan valores que Las variables almacenan valores que pueden cambiar cuando una aplicación pueden cambiar cuando una aplicación se está ejecutandose está ejecutandoLas variables tienen seis elementos Las variables tienen seis elementos básicosbásicos
ElementoElementoElementoElemento DescripciónDescripciónDescripciónDescripción
NombreNombre La palabra que identifica la variable en códigoLa palabra que identifica la variable en código
DirecciónDirección La ubicación de memoria donde se almacena el valorLa ubicación de memoria donde se almacena el valor
Tipo de datosTipo de datos El tipo y tamaño inicial de datos que la variable puede almacenarEl tipo y tamaño inicial de datos que la variable puede almacenar
ValorValor El valor en la dirección de la variableEl valor en la dirección de la variable
ÁmbitoÁmbito El conjunto de todo el código que puede acceder y utilizar la variableEl conjunto de todo el código que puede acceder y utilizar la variable
VidaVida El intervalo de tiempo durante el cual una variable es válidaEl intervalo de tiempo durante el cual una variable es válida
Cómo nombrar variablesCómo nombrar variables
Se recomienda las siguientes Se recomienda las siguientes directrices cuando nombre variables: directrices cuando nombre variables: Proporcione nombres descriptivos y con Proporcione nombres descriptivos y con
significado. significado. Nombre largo de variable puede Nombre largo de variable puede
resultar tedioso en el momento de resultar tedioso en el momento de escribir código, pero hará que el código escribir código, pero hará que el código sea más fácil de leer y mantener.sea más fácil de leer y mantener.
Cómo nombrar variablesCómo nombrar variables Inicie cada palabra del nombre de una Inicie cada palabra del nombre de una
variable pública con letra mayúscula. variable pública con letra mayúscula. Evite el uso de abreviaturas. Evite el uso de abreviaturas. Utilice un nombre único dentro del Utilice un nombre único dentro del
ámbito de la variable. ámbito de la variable. Cuando declare variables locales y Cuando declare variables locales y
privadas, inicie la primera palabra con privadas, inicie la primera palabra con un carácter en minúscula.un carácter en minúscula.
Cómo declarar variablesCómo declarar variables
Sintaxis para declarar variablesSintaxis para declarar variables Dim Dim nombreVariablenombreVariable As As TypeType
Ejemplos de variables de tipo valorEjemplos de variables de tipo valor
Ejemplos de variables de tipo Ejemplos de variables de tipo referenciareferencia
Dim numberBooks As IntegerDim squareFootage As SingleDim numberBooks As IntegerDim squareFootage As Single
Dim myForm As FormDim userInput As StringDim myForm As FormDim userInput As String
Cómo afecta Option Explicit a las Cómo afecta Option Explicit a las variablesvariables
Option Explicit habilitado Option Explicit habilitado (predeterminado)(predeterminado) Obliga a declarar explícitamente Obliga a declarar explícitamente
las variables antes de utilizarlaslas variables antes de utilizarlas
Reduce errores lógicos y facilita el Reduce errores lógicos y facilita el mantenimiento del códigomantenimiento del código
Produce una ejecución del código Produce una ejecución del código más rápidamás rápida
Cómo afecta Option Explicit a las Cómo afecta Option Explicit a las variablesvariables
Option Explicit no habilitadoOption Explicit no habilitado Permite utilizar implícitamente Permite utilizar implícitamente
variables sin declararlasvariables sin declararlas
Aumenta la probabilidad de Aumenta la probabilidad de conflictos de nombres y conflictos de nombres y comportamiento imprevisto comportamiento imprevisto debido a errores de ortografíadebido a errores de ortografía
Produce una ejecución del código Produce una ejecución del código más lentamás lenta
Cómo asignar valores a las variablesCómo asignar valores a las variables
Para asignar un valor a una variable, Para asignar un valor a una variable, utilice el operador de asignación (=), utilice el operador de asignación (=), como se muestra en la siguiente como se muestra en la siguiente expresión: expresión: NombreVariable NombreVariable = = ValorValor
Asignar un valor después de Asignar un valor después de declarardeclarar Dim cumpleaños As Date Dim cumpleaños As Date cumpleaños = #3/9/1974#cumpleaños = #3/9/1974#
Cómo asignar valores a las variablesCómo asignar valores a las variables
Asignar valores mientras se Asignar valores mientras se declaradeclara Dim cumpleaños As Date = #3/9/1974# Dim cumpleaños As Date = #3/9/1974# Dim goodNews As String = "Su cheque Dim goodNews As String = "Su cheque
está en el correo." está en el correo." Dim testCondition As Boolean = TrueDim testCondition As Boolean = True
Cómo utilizar variablesCómo utilizar variables
Podemos utilizar para:Podemos utilizar para: Almacenar valores de expresionesAlmacenar valores de expresiones Almacenar entrada del usuarioAlmacenar entrada del usuario Almacenar objetosAlmacenar objetos Almacenar valores de propiedadesAlmacenar valores de propiedades Devolver valoresDevolver valores Mostrar la salidaMostrar la salida
Variables frente a Variables frente a Constantes Constantes
Sintaxis para declarar una Sintaxis para declarar una constanteconstante:: Const Const constantNameconstantName As Type As Type
VariableVariableVariableVariable ConstantConstantConstantConstant
Declare with DimDeclare with Dim
Values change asapplication runs
Values change asapplication runs
Uses more memory thanconstants
Uses more memory thanconstants
Declare with ConstDeclare with Const
Values stay the same asapplication runs
Values stay the same asapplication runs
Uses less memory thanvariables
Uses less memory thanvariables
VariablesVariablesVariablesVariables ConstantesConstantesConstantesConstantes
Declarar con DimDeclarar con Dim
Los valores cambian mientras se ejecuta la aplicación
Los valores cambian mientras se ejecuta la aplicación
Utilizan más memoria que las constantes
Utilizan más memoria que las constantes
Declarar con ConstDeclarar con Const
Los valores no cambian mientras se ejecuta la aplicación
Los valores no cambian mientras se ejecuta la aplicación
Utilizan menos memoriaque las variables
Utilizan menos memoriaque las variables
Ámbito de una variableÁmbito de una variable
Para estudiar el modo de Para estudiar el modo de trabajo del ámbito con trabajo del ámbito con variables, debemos estar variables, debemos estar familiarizados con los términos familiarizados con los términos y definiciones de la siguiente y definiciones de la siguiente tabla: tabla:
Ámbito de una variableÁmbito de una variable
Ámbito de una variableÁmbito de una variable
Módulo o clase Public Public a As Integer
Módulo o clase Friend Friend b As Date
Módulo o clase Private Private c As String
Procedimiento o bloque Dim d As Integer
Otros proyectos de la solución pueden acceder a la variable a
Otros proyectos de la solución pueden acceder a la variable a
Puede accederse a la variable b desde cualquier lugar del proyecto
Puede accederse a la variable b desde cualquier lugar del proyecto
Puede accederse a la variable c desde cualquier lugar del módulo
Puede accederse a la variable c desde cualquier lugar del módulo
Sólo puede accederse a la variable d dentro del procedimiento o bloque
Sólo puede accederse a la variable d dentro del procedimiento o bloque
Ámbito de una variableÁmbito de una variable
Existen tres Existen tres factoresfactores principales que afectan al principales que afectan al ámbito de una variable: ámbito de una variable: Dónde la declaramos: dentro de un bloque, Dónde la declaramos: dentro de un bloque, procedimiento, módulo, clase o estructura. procedimiento, módulo, clase o estructura. El nivel de acceso (El nivel de acceso (PublicPublic, , Friend Friend o o PrivatePrivate) ) del módulo, clase o estructura en que se del módulo, clase o estructura en que se declara. declara. La sintaxis que utilizamos para declarar la La sintaxis que utilizamos para declarar la variable (variable (DimDim, , PrivatePrivate, , Friend Friend o o PublicPublic).).
Ámbito de una variableÁmbito de una variable
Factores que afectan al ámbitoFactores que afectan al ámbito
Nivel de acceso del contenedor de la variable
Dónde declaramos la variable
Bloque
Procedimiento
Módulo, Clase oEstructura
Private
Public
Friend Nivel de acceso de la variable
Niveles de ámbitoNiveles de ámbito
Nivel de ámbito Descripción
Bloque Disponible únicamente dentro del bloque de código en el que se declara
Procedimiento Disponible únicamente dentro del procedimiento en el que se declara
Modulo Disponible para todo el código del módulo, clase o estructura en el que se declara
Espacio de nombres Disponible para todo el código del espacio de nombres
Cómo declarar Cómo declarar variables locales variables locales
Ejemplo de variable local: a nivel de bloqueEjemplo de variable local: a nivel de bloque
Ejemplo de variable local: a nivel de procedimientoEjemplo de variable local: a nivel de procedimiento
DóndeDóndedeclarardeclararDóndeDónde
declarardeclarar
En bloqueEn bloque
Palabra clavePalabra clavePalabra clavePalabra clave
DimDim
ModificadorModificadorde accesode acceso
ModificadorModificadorde accesode acceso
NingunoNinguno
ÁmbitoÁmbitoÁmbitoÁmbito
Nivel bloqueNivel bloque
En procedimientoEn procedimiento DimDim NingunoNinguno Nivel procedimientoNivel procedimiento
If x < > 0 Then Dim blockNumber As Integer blockNumber = x + 1End If
If x < > 0 Then Dim blockNumber As Integer blockNumber = x + 1End If
Sub ShowMessage_Click( ) Dim miVariable As String ' Insert code to add functionalityEnd Sub
Sub ShowMessage_Click( ) Dim miVariable As String ' Insert code to add functionalityEnd Sub
Cómo declarar variables estáticasCómo declarar variables estáticas
Una Una variable estática variable estática perdurará perdurará mientras la aplicación siga mientras la aplicación siga ejecutándose. ejecutándose. Las variables estáticas siguen Las variables estáticas siguen existiendo y conservan sus últimos existiendo y conservan sus últimos valores entre invocaciones al valores entre invocaciones al procedimiento en el que se han procedimiento en el que se han declarado. declarado.
Cómo declarar variables estáticasCómo declarar variables estáticas
El código de otros procedimientos no El código de otros procedimientos no puede acceder a ellas. puede acceder a ellas.
Las variables estáticas resultan Las variables estáticas resultan útiles para mantener contadores que útiles para mantener contadores que se utilizan únicamente dentro de un se utilizan únicamente dentro de un procedimiento. procedimiento.
Sub AddItem_Click( ) Static items As Integer ' Añadir 1 al contador items += 1 MessageBox.Show (“El contador es ahora " & items)End Sub
Sub AddItem_Click( ) Static items As Integer ' Añadir 1 al contador items += 1 MessageBox.Show (“El contador es ahora " & items)End Sub
Cómo declarar variables de módulo Cómo declarar variables de módulo
Las variables declaradas en un módulo, Las variables declaradas en un módulo, clase o estructura pero no dentro de un clase o estructura pero no dentro de un procedimiento se denominan procedimiento se denominan variables variables de módulode módulo..AccessModifier nombreVariable AccessModifier nombreVariable As As TypeType
Utilizar modificador de accesoUtilizar modificador de accesoUtilizar modificador de accesoUtilizar modificador de acceso
PrivatePrivateÁmbitoÁmbitoÁmbitoÁmbito
MóduloMódulo
FriendFriend ProyectoProyecto
PublicPublic SoluciónSolución
Private myModuleMessage As StringFriend myProjectMessage As StringPublic mySolutionMessage As String
Private myModuleMessage As StringFriend myProjectMessage As StringPublic mySolutionMessage As String
Ejemplo:
Convertir tipos de Convertir tipos de datosdatos
¿Cuales son las funciones de ¿Cuales son las funciones de conversión?conversión?Cómo convertir explícitamente tipos Cómo convertir explícitamente tipos de datosde datosCómo funciona la conversión de Cómo funciona la conversión de datos implícitadatos implícita
¿Cuáles son las funciones de ¿Cuáles son las funciones de conversión?conversión?
Las Las funciones de conversión funciones de conversión permiten convertir permiten convertir explícitamente un valor de un explícitamente un valor de un tipo de datos a otro.tipo de datos a otro.
Valor Integer 1234
Valor String "1234"CStrCStr
Valor Double 567,9894
Valor Integer 568CIntCInt
Valor String "12 Febrero 1992"
Valor Date #2/12/92#CDateCDate
se convierte en
¿Cuáles son las funciones de ¿Cuáles son las funciones de conversión?conversión?
Ejemplo Conversión de Ejemplo Conversión de tipostipos
Convertir tipos de Convertir tipos de datosdatos
Podemos convertir Podemos convertir explícitamente explícitamente valores de valores de un tipo en otro antes de que sean utilizados, un tipo en otro antes de que sean utilizados, evitando así errores en nuestro código y evitando así errores en nuestro código y haciendo que éste se ejecute más haciendo que éste se ejecute más rápidamente.rápidamente.También se pueden realizar conversiones También se pueden realizar conversiones automática o implícitamenteautomática o implícitamente, como convertir , como convertir algunas cadenas a enteros. Sin embargo, las algunas cadenas a enteros. Sin embargo, las conversiones implícitas pueden producir conversiones implícitas pueden producir resultados imprevistos.resultados imprevistos.
Cómo convertir explícitamente Cómo convertir explícitamente tipos de datostipos de datos
Sintaxis: Sintaxis: NombreVariableNombreVariable = = CFunctionCFunction((ExpressionExpression))
EjemploEjemplo
Declarar una variable como tipo de datos String Declarar una variable como tipo de datos String Dim Dim myStringmyString As String As String
Convertir el valor string en un valor integerConvertir el valor string en un valor integermyIntegermyInteger = CInt( = CInt(myStringmyString))
Declarar otra variable como tipo de datos Integer Declarar otra variable como tipo de datos Integer Dim Dim myIntegermyInteger As Integer As Integer
Asignar un valor a la variable string Asignar un valor a la variable string myStringmyString = "1234" = "1234"
11
22
33
44
Convierte pies y pulgadas A metros. Convierte pies y pulgadas A metros.
Cómo funciona la conversión de datos Cómo funciona la conversión de datos implícitaimplícita
Los tipos de datos son convertidos Los tipos de datos son convertidos automáticamenteautomáticamenteNo se requiere sintaxis especial en el códigoNo se requiere sintaxis especial en el códigoEjemplo de conversión de datos implícita:Ejemplo de conversión de datos implícita:
Desventajas de la conversión de datos implícita:Desventajas de la conversión de datos implícita: Puede producir resultados imprevistosPuede producir resultados imprevistos El código se ejecuta más lentamenteEl código se ejecuta más lentamenteOption Strict rechaza las conversiones implícitas Option Strict rechaza las conversiones implícitas de tipo estrechasde tipo estrechas
Dim sequence As StringDim number As Integer' ...sequence = "1234"number = sequence' The value in sequence is implicitly converted to an Integer
Dim sequence As StringDim number As Integer' ...sequence = "1234"number = sequence' The value in sequence is implicitly converted to an Integer
Crear y utilizar estructurasCrear y utilizar estructuras
Información relacionada de grupo en una estructura única
Nombre empleadoNombre empleado
Fecha nacimientoFecha nacimiento
Fecha contratoFecha contrato
CargoCargo
Estructura de datos de Empleado
Estructura de datos de Empleado
Crear y utilizar Crear y utilizar estructurasestructuras
Una combinación de tipos de datosUna combinación de tipos de datosSe utilizan para crear tipos de valores Se utilizan para crear tipos de valores definidos por el usuariodefinidos por el usuarioSus miembros pueden ser variables, Sus miembros pueden ser variables, propiedades, métodos o eventospropiedades, métodos o eventosEjemplo de estructura definida por el Ejemplo de estructura definida por el usuario:usuario:
Public Structure Empleado Public Nombre As String Public Apellido As String Public FechaContrato As Date Public Cargo As String Private Salario As DecimalEnd Structure
Public Structure Empleado Public Nombre As String Public Apellido As String Public FechaContrato As Date Public Cargo As String Private Salario As DecimalEnd Structure
Cómo declarar Cómo declarar estructurasestructuras
Dentro de un módulo, archivo o clase (no en un Dentro de un módulo, archivo o clase (no en un procedimiento)procedimiento)Sintaxis para declarar estructuras:Sintaxis para declarar estructuras:
Dónde se encuentra el modificador de acceso:Dónde se encuentra el modificador de acceso: PublicPublic para acceso no restringido para acceso no restringido ProtectedProtected para acceso sólo dentro de su propia para acceso sólo dentro de su propia
claseclase FriendFriend para acceso en cualquier lugar de la para acceso en cualquier lugar de la
aplicación o ensambladoaplicación o ensamblado PrivatePrivate para acceso sólo dentro del contexto de para acceso sólo dentro del contexto de
su declaraciónsu declaraciónNo asigne valores a miembros de datos en la No asigne valores a miembros de datos en la declaracióndeclaración
AccessModifier Structure StructureName ' Declare structure members hereEnd Structure
AccessModifier Structure StructureName ' Declare structure members hereEnd Structure
Ejemplo de estructuraEjemplo de estructura
¿Qué es una matriz? ¿Qué es una matriz?
Definición: Una matriz es una serie de Definición: Una matriz es una serie de elementos de datoselementos de datos Todos los elementos de una matriz tienen el Todos los elementos de una matriz tienen el
mismo tipo de datos mismo tipo de datos Se accede a los elementos individuales utilizando Se accede a los elementos individuales utilizando
índices enterosíndices enteros
EjemploEjemplo Para declarar una matriz entera con siete Para declarar una matriz entera con siete
elementos: elementos:
Para acceder al tercer elemento de la matriz:Para acceder al tercer elemento de la matriz:
(0) (1) (2) (3) (4) (5) (6)
Índice 0 Índice 6
Dim countHouses(6) As IntegerDim countHouses(6) As Integer
TextBox1.Text = CStr(countHouses(2))TextBox1.Text = CStr(countHouses(2))
Cómo declarar una matriz Cómo declarar una matriz unidimensional unidimensional
Declaramos una matriz especificando el: Declaramos una matriz especificando el: Nombre de la matrizNombre de la matriz Tamaño (número de elementos)Tamaño (número de elementos) Tipo de datos de los elementos de la matrizTipo de datos de los elementos de la matriz Modificador de acceso (si fuera necesario)Modificador de acceso (si fuera necesario)
Especifica el nombre de la matriz
Especifica el tipo de datos de elementos de la matriz
Especifica el nivel de acceso de la matriz
AccessModifier ArrayName(Size) As TypeAccessModifier ArrayName(Size) As Type
Especifica el tamaño de la matriz
Declarar un arrayDeclarar un array
Declararemos un array de igual forma Declararemos un array de igual forma que hacemos con una variable normal, que hacemos con una variable normal, con la excepción de que junto al nombre con la excepción de que junto al nombre de la variable, situaremos unos de la variable, situaremos unos paréntesis.paréntesis.
Declarar un arrayDeclarar un array
Asignación y obtención de valoresAsignación y obtención de valores
Para asignar u obtener valores de los Para asignar u obtener valores de los elementos de un array, haremos elementos de un array, haremos referencia al índice o posición. O referencia al índice o posición. O bien, puesto que un array es un bien, puesto que un array es un objeto, utilizaremos los métodos objeto, utilizaremos los métodos SetValueSetValue( ) y ( ) y GetValueGetValue( ) que ( ) que asignan y obtienen respectivamente asignan y obtienen respectivamente los valores del array.los valores del array.
Asignación y obtención de valoresAsignación y obtención de valores
Recorrer el contenidoRecorrer el contenido
Para realizar un recorrido por los Para realizar un recorrido por los elementos de un array, disponemos elementos de un array, disponemos de las funciones LBound( ) y de las funciones LBound( ) y UBound( ), que devuelven el número UBound( ), que devuelven el número de índice inferior y superior de índice inferior y superior respectivamente del array que respectivamente del array que pasemos como parámetro. pasemos como parámetro.
Recorrer el contenidoRecorrer el contenido
LengthLength. Esta propiedad de un objeto . Esta propiedad de un objeto array devuelve el número de array devuelve el número de elementos que contiene.elementos que contiene.GetLowerBound( ), GetLowerBound( ), GetUpperBound( )GetUpperBound( ). Devuelven . Devuelven respectivamente, el número de respectivamente, el número de índice inferior y superior. El mismo índice inferior y superior. El mismo que usando LBound( ) y UBound( ).que usando LBound( ) y UBound( ).
EjemploEjemplo
EjemploEjemplo
Recomendaciones:Recomendaciones:
El primer índice de un array debe ser siempre El primer índice de un array debe ser siempre ceroceroNo es posible crear arrays con rangos de No es posible crear arrays con rangos de índices ejemplo: índices ejemplo: Dim Nombres(5 To 8) As StringDim Nombres(5 To 8) As String
RecomendacionesRecomendaciones
Modificación de tamañoModificación de tamaño Para aumentar o disminuir el número de Para aumentar o disminuir el número de
elementos de un array disponemos de elementos de un array disponemos de la palabra clave la palabra clave ReDimReDim. Esta . Esta instrucción crea internamente un nuevo instrucción crea internamente un nuevo array, por lo que los valores del array array, por lo que los valores del array original se pierden.original se pierden.
Evitaremos este problema utilizando Evitaremos este problema utilizando junto a ReDim la palabra clave junto a ReDim la palabra clave PreservePreserve, que copia en el nuevo array, , que copia en el nuevo array, los valores del array previo.los valores del array previo.
BúsquedaBúsqueda
Los métodos IndexOf( ) y Los métodos IndexOf( ) y LastIndexOf( ) de la clase Array, nos LastIndexOf( ) de la clase Array, nos permiten buscar un elemento en un permiten buscar un elemento en un array comenzando la búsqueda array comenzando la búsqueda desde el principio o final desde el principio o final respectivamenterespectivamente Dim sNombres() As String = {"Alberto", Dim sNombres() As String = {"Alberto",
"Juan", "Ana", "Paco", "Miguel", "Ana"}"Juan", "Ana", "Paco", "Miguel", "Ana"} x = Array.IndexOf(sNombres, "Ana", 3)x = Array.IndexOf(sNombres, "Ana", 3)
Arrays Arrays multidimensionalesmultidimensionales
Dim iDatos(2, 4) As IntegerDim iDatos(2, 4) As Integer
Recorrer arrays multidimensionalesRecorrer arrays multidimensionales
RankRank. Devuelve el número de dimensiones del . Devuelve el número de dimensiones del array.array.GetLength(Dimension)GetLength(Dimension). Devuelve el número . Devuelve el número de elementos de la dimensión de array pasada de elementos de la dimensión de array pasada como parámetro.como parámetro.GetLowerBound(Dimension)GetLowerBound(Dimension). Devuelve el . Devuelve el número de índice inferior de la dimensión número de índice inferior de la dimensión pasada como parámetro.pasada como parámetro.GetUpperBound(Dimension)GetUpperBound(Dimension). Devuelve el . Devuelve el número de índice superior de la dimensión número de índice superior de la dimensión pasada como parámetro.pasada como parámetro.