Visual Basic .NET Language
listor
Sök…
Syntax
- Lista.Lägg (artikel som typ)
- List.RemoveRange (index som heltal, räkna som heltal)
- Lista. Ta bort (index som heltal)
- List.AddRange (insamling)
- List.Find (matcha som Predicate (of String))
- Lista. Infoga (index som heltal, objekt som typ)
- Lista.Innehåller (artikel som typ)
Skapa en lista
Listor kan fyllas med alla datatyper efter behov med formatet
Dim aList as New List(Of Type)
Till exempel:
Skapa en ny, tom lista med strängar
Dim aList As New List(Of String)
Skapa en ny lista med strängar och fyll i med vissa data
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"})
NOTERA:
Om du får följande när koden körs:
Objektreferens är inte inställd på ett exempel på ett objekt.
Se till att du antingen förklarar som New
dvs Dim aList as New List(Of String)
eller om du deklarerar utan den New
, se till att du ställer in listan till en ny lista - Dim aList as List(Of String) = New List(Of String)
Lägg till objekt i en lista
Dim aList as New List(Of Integer)
aList.Add(1)
aList.Add(10)
aList.Add(1001)
För att lägga till mer än ett objekt åt gången använder du AddRange . Lägger alltid till i slutet av listan
Dim blist as New List(of Integer)
blist.AddRange(alist)
Dim aList as New List(of String)
alist.AddRange({"one", "two", "three"})
För att lägga till objekt i mitten av listan använder du Infoga
Insert kommer att placera objektet i indexet och numera om de återstående artiklarna
Dim aList as New List(Of String)
aList.Add("one")
aList.Add("three")
alist(0) = "one"
alist(1) = "three"
alist.Insert(1,"two")
Ny utgång:
alist(0) = "one"
alist(1) = "two"
alist(2) = "three"
Ta bort objekt från en 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()
Hämta objekt från en lista
Dim aList as New List(Of String)
aList.Add("Hello, World")
aList.Add("Test")
Dim output As String = aList(0)
output
:
Hej världen
Om du inte känner till objektets index eller bara känner till en del av strängen använder du metoden Sök eller 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
:
Hej världen
FindAll- metoden returnerar en ny lista (av sträng)
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"))
output (0) = "Hej, test"
output (1) = "Test"
Slinga in tråget i listan
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
Tillverkar följande utgång:
one
two
three
Ett annat alternativ skulle vara att gå igenom indexet för varje element:
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
Kontrollera om objekt finns i en 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
Tillverkar följande utgång:
False
True
False