Inserta el elemento especificado en la posición indicada.
Item.Nombre = "Tres"
Item.Longitud = 3
Coleccion.Insert(2, Item)
En el ejemplo se inserta el item indicado en la colección en la posición dos, la posición ha de existir en la colección, y su contenido se sustituye por el nuevo.
Valor inicial de la colección Valor final de la colección después de la inserción.
1 Uno 1 Uno
2 Dos 2 Tres
El valor de la segunda posición se sustituye por el nuevo valor.
El método insertRange inserta los elementos indicados a partir de la posición indicada.
Dim Otra As New System.Collections.Generic.List(Of Datos)
Item = New Datos()
Item.Nombre = "Tres"
Item.Longitud = 21
Otra.Add(Item)
Item = New Datos()
Item.Nombre = "Cuatro"
Item.Longitud = 42
Otra.Add(Item)
Coleccion.InsertRange(2, Otra)
Valor inicial de la colección Valor final de la colección después de la inserción.
1 Uno 1 Uno
2 Dos 2 Dos
3 Tres
4 Cuatro
El método CopyTo nos permite obtener un array del contenido de la colección.
El método ToArray también, cambia la sintaxis, por ser una función.
La sintaxis para la declaración del vector V, puede ser así:
Dim V(Coleccion.Count - 1) As Datos
es
Coleccion.CopyTo(V)
V = Coleccion.ToArray()
La utilización puede ser:
Dim V(Coleccion.Count - 1) As Datos
Coleccion.CopyTo(V)
For Each Dato In V
Console.WriteLine("Valor {0} ", Dato.Nombre)
Console.WriteLine("HashCode {0} ", Dato.Nombre.GetHashCode)
Next
Dim V(Coleccion.Count - 1) As Datos
Usamos Colección.count –1 para que el array quede bien declarado en su número de elementos.
La colección se inicia en el elemento uno y el vector en el elemento cero.
La colección si tiene tres elementos son el 1,2 y 3.
El vector sería el 0,1 y 2.
Realiza una copia superficial de una colección, sólo copia los elementos de dicha colección, tanto si son tipos de referencia como si son tipos de valor, pero no copia los objetos a los que hacen referencia las referencias.
Las referencias de la nueva colección apuntan a los mismos objetos que las referencias de la colección original.
La sintaxis para utilizar el método Clone es:
Otra = CType(Coleccion.Clone(), SortedList)
Ctype es para permitir el cambio de una colección a otra.
Y la clonación se realiza en realidad así:
Coleccion.Clone()
Un ejemplo completo para el uso de Clone.
Dim Coleccion As New System.Collections.SortedList
Dim Otra As New System.Collections.SortedList
Coleccion.Add(1, "Silla")
Coleccion.Add(2, "Mesa")
Coleccion.Add(3, "Puerta")
For x = 0 To Coleccion.Count - 1
Console.WriteLine(" Clave {0} Valor {1} ", _
Coleccion.GetKey(x), Coleccion.GetByIndex(x))
Next
Otra = CType(Coleccion.Clone(), SortedList)
For x = 0 To Otra.Count - 1
Console.WriteLine(" Clave {0} Valor {1} ", Otra.GetKey(x), Otra.GetByIndex(x))
Next
Podemos comprobar si determinada información existe o no en una colección.
El método que lo realiza es contains, que devuelve true o false.
La sintaxis del mismo es
Coleccion.Contains(Item))
Siendo Item
Item = New Datos
Item.Nombre = "Silla"
Y su utilización por ejemplo:
Console.WriteLine("Contains {0} ", Coleccion.Contains(Item))
Donde “Silla” es el dato que deseamos comprobar, pero recordemos que no buscamos “Silla”, si no un elemento en esa colección, que está representado por Item, y que es este caso contiene “Silla”
En las colecciones en las que se dispone de clave y valor el uso es el que sigue.
Console.WriteLine(Coleccion.ContainsValue("Silla"))
Console.WriteLine(Coleccion.ContainsKey("2"))
Síguenos en: Facebook Sobre aulaClic Política de Cookies