Unidad 34. Arrays en VB (VI)





34.6. Métodos.

Hemos visto una serie de acciones que son las clásicas en un array.

Pero disponemos de una serie de métodos en VB que realizan  algunas de esas tareas, vamos a nombrarlos para que se sepa de su existencia.

 

Clear                                                 Limpia el contenido del array

Clone                                                Duplica el contenido

Copy                                                 Copia un vector, o parte de él.

GetLength                                         Indica el número de elementos.

GetLowerUbound                               Indica la primera posición

GetUpperUbound                               Indica la última posición.

GetType                                           

GetValue                                           Devuelve un elemento

IndexOf, LastIndexOf                         Indica la posición de un valor

Reverse                                             Invierte

Sort                                                  Clasifica

 

Vamos a ver la utilidad de cada uno de los métodos existentes en cada una de las dos clases.

1    Clear

Siguiendo con el ejemplo anterior, el método Clear realiza el vaciado del contenido del vector, pero no del número de elementos, que seguirá siendo el mismo

 

Module Ejemplo

  Sub Main()

    Dim Meses() As String = {"Enero", "Febrero", "Marzo", "Abril", _

                             "Mayo", "Junio", "Julio", "Agosto", _

                             "Septiembre","Octubre", "Noviembre", "Diciembre"}

    Dim Valor As String

 

    Console.WriteLine("Visualizamos el contenido antes ")

 

    ' Visualizamos el vector

    For Each Valor In Meses

      Console.WriteLine(Valor)

    Next

    Console.WriteLine("Elementos del vector {0} ", Meses.Length)

 

    ' Vaciado del vector

    Meses.Clear(Meses, 0, Meses.Length)

 

    Console.WriteLine("Visualizamos el contenido después ")

    Console.WriteLine("Elementos del vector {0} ", Meses.length)

 

    ' Visualizamos el vector

    For Each Valor In Meses

      Console.WriteLine(" [{0}]", Valor)

    Next

    Console.ReadLine() 

  End Sub

End Module

 

2    Clone

Este método lo que hace es generar una copia de un array ya existente.

 

Module Ejemplo

  Sub Main()

    Dim Meses() As String = {"Enero", "Febrero", "Marzo", "Abril", _

                             "Mayo", "Junio", "Julio", "Agosto", _

                             "Septiembre","Octubre", "Noviembre", "Diciembre"}

    Dim OtrosMeses() As String

    Dim Valor As String

 

    Console.WriteLine("Visualizamos el contenido ")

    Console.WriteLine("Elementos del vector {0} ", Meses.GetUpperBound(0))

    ' Visualizamos el vector

    For Each Valor In Meses

      Console.WriteLine(Valor)

    Next

    ' Clonamos el vector

    OtrosMeses = Meses.Clone()

    Console.WriteLine("Elementos vector {0} ", OtrosMeses.GetUpperBound(0))

    Console.WriteLine("Visualizamos el contenido ")

    ' Visualizamos el vector

    For Each Valor In OtrosMeses

      Console.WriteLine(Valor)

    Next

    Console.ReadLine() 

  End Sub

End Module

 

3    ConstrainedCopy

Copia el número de elementos indicado de un array de origen a un array de destino, en la dimensión que se indica, y del número de elementos que se indique.

 

Module Ejemplo

  Sub Main()

    Dim Meses() As String = {"Enero", "Febrero", "Marzo", "Abril", _

                             "Mayo", "Junio", "Julio", "Agosto", _

                             "Septiembre","Octubre", "Noviembre", "Diciembre"}

    Dim Mesesitos(3) As String

    Dim Dato As String

    Dim DimOrigen As Integer = 0

    Dim DimDestino As Integer = 0

    Dim Cuantos As Integer = 2   ' probar con 2 y 4

 

    ' Contenido vector origen

    For Each Dato In Meses

      Console.WriteLine(Dato)

    Next

 

    ' Copia contenido de un vector en otro

    Array.ConstrainedCopy(Meses, DimOrigen, Mesesitos, DimDestino, Cuantos)

 

    ' Contenido vector destino

    Console.WriteLine("Visualizar el vector de destino")

    For Each Dato In Mesesitos

      Console.WriteLine("Mes de {0} ", Dato)

    Next

    Console.ReadLine()

  End Sub

End Module

4    Copy

A diferencia de Clone, Copy hace un duplicado del vector, solo del número de elementos que se indica en el argumento.

 

' Copia solo el número de elementos indicado,

‘ OtrosMeses.GetUpperBound(0) vale 5, que es el número de elementos que tiene

‘ Meses es el origen,

‘ OtrosMeses es el destino

‘ Meses.Copy(Meses, OtrosMeses, OtrosMeses.GetUpperBound(0))

Module Ejemplo

  Sub Main()

    Dim Meses() As String = {"Enero", "Febrero", "Marzo", "Abril", _

                             "Mayo", "Junio", "Julio", "Agosto", _

                             "Septiembre","Octubre", "Noviembre", "Diciembre"}

    ' Le damos cinco elementos

    Dim OtrosMeses(5) As String

    Dim Valor As String

    Console.WriteLine("Visualizamos el contenido ")

    Console.WriteLine("Elementos del vector {0} ", Meses.GetUpperBound(0))

    ' Visualizamos el vector

    For Each Valor In Meses

      Console.WriteLine(Valor)

    Next

 

    ' Copia solo el número de elementos indicado,

    ‘ OtrosMeses.GetUpperBound(0) vale 5, que es el número de elementos

    ‘ que tiene

    ‘ Meses es el origen, OtrosMeses es el destino

    Meses.Copy(Meses, OtrosMeses, OtrosMeses.GetUpperBound(0))

 

    Console.WriteLine("Elementos vector {0} ", OtrosMeses.GetUpperBound(0))

   

    Console.WriteLine("Visualizamos el contenido ")

    ' Visualizamos el vector

    For Each Valor In OtrosMeses

      Console.WriteLine(Valor)

    Next

    Console.ReadLine() 

  End Sub

End Module

 

Octubre-2010
Pág. 34.6

Atrás  Inicio  Adelante






Página inicial  Cursos Informática Gratuitos

Síguenos en:   Facebook       Sobre aulaClic            Política de Cookies