homelinksBlijf op de hoogte van de recente aanpassingen op vbvoorbeelden!
Visual Basic 2010 Voorbeelden

visual basic 2010 broncode voorbeelden

Microsoft Visual Studio 2010Microsoft Developers Network - Visual BasicMicrosoft .NET Framework

23.7. System.Collections.Generic.LinkedList(Of T)

Print Email Deel op Facebook Deel op Twitter

Dit artikel is gepubliceerd op zondag 31 juli 2011 op vbvoorbeelden, bezoek de website voor een recente versie van dit artikel of andere artikels.

Het type System.Collections.Generic.LinkedList(Of T) implementeert de interface ICollection(Of T) en is een strongly typed dubbel gelinkte lijst waarin elke node ( ILinkedListNode(Of T) ) zijn volgende ( Next ) en vorige ( Previous ) node kent :
Visual Basic 2010 Broncode
Option Strict On

Imports System.Collections.Generic

Namespace LinkedListOfTExample
    Public Class Person
        Private _Name As String
        Public Property Name() As String
            Get
                Name = _Name
            End Get
            Set(ByVal value As String)
                _Name = value
            End Set
        End Property
        Public Overrides Function Equals(ByVal obj As Object) As Boolean
            If obj IsNot Nothing AndAlso TypeOf obj Is Person Then
                Equals = Name.Equals(DirectCast(obj, Person).Name)
            End If
        End Function
        Public Overrides Function GetHashCode() As Integer
            GetHashCode = Name.GetHashCode()
        End Function
    End Class
    Public Class Client
        Public Shared Sub Main()
            Dim linkedList1 As New LinkedList(Of Person)
            Dim linkedListNode1 As LinkedListNode(Of Person) = _
                           linkedList1.AddFirst(New Person With {.Name = "John"})
            '
            Dim linkedlistnode2 As LinkedListNode(Of Person) = _
                           linkedList1.AddAfter(linkedListNode1, _
                                                New Person With {.Name = "Jane"})
            '
            Console.WriteLine(linkedListNode1.Next Is linkedlistnode2)
            Console.WriteLine(linkedListNode1 Is linkedlistnode2.Previous)
            '
            Console.WriteLine(linkedList1.Count)
            '
            For Each element As Person In linkedList1                      ' (1)
                Console.WriteLine(element.Name)
            Next
            '
            Console.WriteLine( _
                   linkedList1.Contains(New Person With {.Name = "John"})) ' (2)
            '
            Console.ReadLine()
        End Sub
    End Class
End Namespace
Console Application Output
True
True
2
John
Jane
True
Bemerk (1) dat LinkedList(Of T) ook IEnumerable(Of T) implementeert.

(2) Ook hier is het zo dat de Contains method van de collectie gebruikt maakt van de Equals method van de elementen om na te gaan of deze gelijk zijn aan de parameter.

Dit artikel is gepubliceerd op zondag 31 juli 2011 op vbvoorbeelden, bezoek de website voor een recente versie van dit artikel of andere artikels.