ListNode:
Public Class ListNode Public NodeData As Integer Public NextNode As ListNode End Class
ListNodeLib:
Public Class ListNodeLib Private Head As ListNode Private Tail As ListNode Public Sub New() Me.Head = Nothing Me.Tail = Nothing End Sub Public ReadOnly Property ListHead As ListNode Get Return Me.Head End Get End Property Public ReadOnly Property ListTail As ListNode Get Return Me.Tail End Get End Property Public Function Add(NewNode As ListNode) As Boolean Dim OK = False If Me.Head Is Nothing Then Me.Head = NewNode NewNode.NextNode = Nothing Else Me.Tail.NextNode = NewNode NewNode.NextNode = Nothing End If Me.Tail = NewNode Return OK End Function Public Sub PrintList() Dim CurrNode As ListNode = Me.Head Dim i As Integer = 0 Do While Not (CurrNode Is Nothing) Console.WriteLine(CurrNode.NodeData) CurrNode = CurrNode.NextNode Loop End Sub End Class
主程式:
Module ModuleW10 Private MyListNodeLib As ListNodeLib = New ListNodeLib() Sub Main() Dim NumArr() As Integer = {11, 21, 31, 9, 8, 7} Dim CurrListNode As ListNode = Nothing For i = 0 To UBound(NumArr) CurrListNode = New ListNode CurrListNode.NodeData = NumArr(i) CurrListNode.NextNode = Nothing MyListNodeLib.Add(CurrListNode) Next MyListNodeLib.PrintList() Console.ReadKey() End Sub End Module