Buscar..


Sintaxis

  • Lista.Agregar (artículo como tipo)
  • List.RemoveRange (index As Integer, count As Integer)
  • List.Remove (index As Integer)
  • List.AddRange (colección)
  • List.Find (coinciden como Predicado (de cadena))
  • List.Insert (index como Integer, item como Type)
  • List.Contains (artículo como tipo)

Crear una lista

Las listas se pueden rellenar con cualquier tipo de datos según sea necesario, con el formato

Dim aList as New List(Of Type)

Por ejemplo:

Crear una nueva lista vacía de cadenas

Dim aList As New List(Of String)

Crear una nueva lista de cadenas y rellenar con algunos datos

VB.NET 2005/2008:

Dim aList as New List(Of String)(New String() {"one", "two", "three"})

VB.NET 2010:

Dim aList as New List(Of String) From {"one", "two", "three"}

-

VB.NET 2015:

Dim aList as New List(Of String)(New String() {"one", "two", "three"})

NOTA:

Si está recibiendo lo siguiente cuando se ejecuta el código:

Referencia a objeto no establecida como instancia de un objeto.

Asegúrese de declarar como New es decir, Dim aList as New List(Of String) o si declara sin el New , asegúrese de establecer la lista en una nueva lista - Dim aList as List(Of String) = New List(Of String)

Añadir elementos a una lista

Dim aList as New List(Of Integer)
aList.Add(1)
aList.Add(10)
aList.Add(1001)

Para agregar más de un elemento a la vez, use AddRange . Siempre se agrega al final de la lista.

Dim blist as New List(of Integer)
blist.AddRange(alist) 


Dim aList as New List(of String)
alist.AddRange({"one", "two", "three"}) 

Para agregar elementos al centro de la lista, use Insertar

Insertar colocará el elemento en el índice y volverá a numerar los elementos restantes.

Dim aList as New List(Of String)
aList.Add("one")
aList.Add("three")
alist(0) = "one"
alist(1) = "three"
alist.Insert(1,"two")

Nueva salida:

alist(0) = "one"       
alist(1) = "two"
alist(2) = "three"

Eliminar elementos de una lista

Dim aList As New List(Of String)
aList.Add("Hello")
aList.Add("Delete Me!")
aList.Add("World")

'Remove the item from the list at index 1
aList.RemoveAt(1)

'Remove a range of items from a list, starting at index 0, for a count of 1)
'This will remove index 0, and 1!
aList.RemoveRange(0, 1)

'Clear the entire list
alist.Clear()

Recuperar elementos de una lista

Dim aList as New List(Of String)
aList.Add("Hello, World")
aList.Add("Test")

Dim output As String = aList(0)

output :

Hola Mundo

Si no conoce el índice del elemento o solo conoce parte de la cadena, use el método Find o FindAll

Dim aList as New List(Of String)
aList.Add("Hello, World")
aList.Add("Test")

Dim output As String = aList.Find(Function(x) x.StartWith("Hello"))

output :

Hola Mundo

El método FindAll devuelve una nueva lista (de cadena)

Dim aList as New List(Of String)
aList.Add("Hello, Test")
aList.Add("Hello, World")
aList.Add("Test")

Dim output As String = aList.FindAll(Function(x) x.Contains("Test"))

salida (0) = "Hola, Prueba"

salida (1) = "Prueba"

Bucle a través de los elementos en la lista

Dim aList as New List(Of String)
aList.Add("one")
aList.Add("two")
aList.Add("three")

For Each str As String in aList
    System.Console.WriteLine(str)
Next

Produce la siguiente salida:

one
two
three

Otra opción, sería recorrer en bucle utilizando el índice de cada elemento:

Dim aList as New List(Of String)
aList.Add("one")
aList.Add("two")
aList.Add("three")

For i = 0 to aList.Count - 1 'We use "- 1" because a list uses 0 based indexing.
    System.Console.WriteLine(aList(i))
Next

Compruebe si el artículo existe en una lista

    Sub Main()
        Dim People = New List(Of String)({"Bob Barker", "Ricky Bobby", "Jeff Bridges"})
        Console.WriteLine(People.Contains("Rick James"))
        Console.WriteLine(People.Contains("Ricky Bobby"))
        Console.WriteLine(People.Contains("Barker"))
        Console.Read 
    End Sub

Produce la siguiente salida:

False
True
False


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow