VB.Net by API/System.Collections/Collection

Материал из VB Эксперт
Версия от 15:51, 26 мая 2010; Admin (обсуждение | вклад) (1 версия)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Collection.Add

<source lang="vbnet"> Imports System Imports System.Collections Public Class MainClass

   Shared Sub Main()
      Dim intCollection As New Collection(  )
      Dim empCollection As New Collection(  )
      Dim empCollection2 As New Collection(  )
 
      "populate the Collections
      Dim i As Integer
      For i = 0 To 4
          empCollection.Add(New Employee(i + 100))
          intCollection.Add((i * 5))
      Next i
 
      "add key/value pairs
      empCollection2.Add(New Employee(1989), "G W")
      empCollection2.Add(New Employee(1997), "J A")
      empCollection2.Add(New Employee(1901), "T J")
 
 
      "print each member of the array
      For Each i In intCollection
          Console.Write("{0} ", i.ToString(  ))
      Next i
 
      Console.WriteLine(  )
      Console.WriteLine("Employee collection...")
      Dim e As Employee
      For Each e In empCollection
          Console.Write("{0} ", e.ToString(  ))
      Next e
 
      Console.WriteLine(  )
      Console.WriteLine("Employee collection 2...")
      For Each e In empCollection2
          Console.Write("{0} ", e.ToString(  ))
      Next e
 
      Console.WriteLine(  )
 
      "retrieve an Employee by key
      Dim emp As Employee
      emp = empCollection2.Item("J A")
      Console.WriteLine( emp.ToString(  ))
 
      "note that indexing is 1-based (rather than zero based)
      emp = empCollection2.Item(1)
      Console.WriteLine(emp.ToString(  ))
  End Sub

End Class

    Public Class Employee
        Private myEmpID As Integer
        Public Sub New(ByVal empID As Integer)
            Me.myEmpID = empID
        End Sub "New
        Public Overrides Function ToString(  ) As String
            Return myEmpID.ToString(  )
        End Function "ToString
        Public Property EmpID(  ) As Integer
            Get
                Return myEmpID
            End Get
            Set(ByVal Value As Integer)
                myEmpID = Value
            End Set
        End Property
    End Class "Employee
  
   
 </source>


Collection.GetEnumerator()

<source lang="vbnet">

Imports System Imports System.Collections Public Class MainClass

   Shared Sub Main(ByVal args As String())
       Dim m_employees As New Collection
       m_employees.Add(New employee("A", "B", "Author"))
       m_employees.Add(New employee("C", "D", "Band"))
       m_employees.Add(New employee("E", "F", "Artist"))
       " Iterator.
       Dim emp As employee
       Dim employee_enumerator As IEnumerator
       employee_enumerator = m_employees.GetEnumerator()
       Do While (employee_enumerator.MoveNext)
           emp = CType(employee_enumerator.Current, Employee)
           Console.WriteLine(emp.Title & " " & emp.FirstName & " " & emp.LastName)
       Loop
       " For Each.
       For Each emp1 As employee In m_employees
           Console.WriteLine(emp1.Title & " " & emp1.FirstName & " " & emp1.LastName)
       Next emp1
   End Sub

End Class

   Public Class Employee
       Public FirstName As String
       Public LastName As String
       Public Title As String
       Public Sub New(ByVal first_name As String, ByVal last_name As String, ByVal new_title As String)
           FirstName = first_name
           LastName = last_name
           Title = new_title
       End Sub
   End Class
  
   
 </source>


Collection.Item

<source lang="vbnet"> Imports System Imports System.Collections Public Class MainClass

   Shared Sub Main()
      Dim intCollection As New Collection(  )
      Dim empCollection As New Collection(  )
      Dim empCollection2 As New Collection(  )
 
      "populate the Collections
      Dim i As Integer
      For i = 0 To 4
          empCollection.Add(New Employee(i + 100))
          intCollection.Add((i * 5))
      Next i
 
      "add key/value pairs
      empCollection2.Add(New Employee(1989), "G W")
      empCollection2.Add(New Employee(1997), "J A")
      empCollection2.Add(New Employee(1901), "T J")
 
 
      "print each member of the array
      For Each i In intCollection
          Console.Write("{0} ", i.ToString(  ))
      Next i
 
      Console.WriteLine(  )
      Console.WriteLine("Employee collection...")
      Dim e As Employee
      For Each e In empCollection
          Console.Write("{0} ", e.ToString(  ))
      Next e
 
      Console.WriteLine(  )
      Console.WriteLine("Employee collection 2...")
      For Each e In empCollection2
          Console.Write("{0} ", e.ToString(  ))
      Next e
 
      Console.WriteLine(  )
 
      "retrieve an Employee by key
      Dim emp As Employee
      emp = empCollection2.Item("J A")
      Console.WriteLine( emp.ToString(  ))
 
      "note that indexing is 1-based (rather than zero based)
      emp = empCollection2.Item(1)
      Console.WriteLine(emp.ToString(  ))
  End Sub

End Class

    Public Class Employee
        Private myEmpID As Integer
        Public Sub New(ByVal empID As Integer)
            Me.myEmpID = empID
        End Sub "New
        Public Overrides Function ToString(  ) As String
            Return myEmpID.ToString(  )
        End Function "ToString
        Public Property EmpID(  ) As Integer
            Get
                Return myEmpID
            End Get
            Set(ByVal Value As Integer)
                myEmpID = Value
            End Set
        End Property
    End Class "Employee
  
   
 </source>


Collection.Remove

<source lang="vbnet">


Option Strict On Public Module CollectionTest

  Public Sub Main()
     Dim weights As New Collection
     weights.Add("ounces", "oz")
     weights.Add("pounds", "lbs")
     weights.Add("kilograms", "kg")
     weights.Add("milligrams", "mg")
     For ordinal As Integer = weights.Count To 1 Step -1
        weights.Remove(ordinal)
     Next
     Console.WriteLine("The collection now has {0} items.", weights.Count)
  End Sub

End Module


 </source>