Objetos de Coleção (Visual Basic)

Uma Collection do Visual Basic é um conjunto ordenado de itens que podem ser referenciados como uma unidade.

Comentários

O objeto Collection do Visual Basic fornece uma maneira conveniente de se ver um grupo relacionado de itens como um único objeto.Os itens, ou elementos, em uma coleção somente precisam ser relacionados pelo fato de estarem localizados na coleção.Elementos de uma coleção não precisam partilhar do mesmo tipo de dados.

Você pode criar uma coleção da mesma forma que cria outros objetos, como o exemplo seguinte ilustra.

Dim coll As New Microsoft.VisualBasic.Collection()

Uma vez criada uma coleção, você pode fazer:

  • Adicionar um elemento que utiliza o Método Adicionar.

  • Remover um elemento que utiliza o Método Remover.

  • Remover todos os elementos que utilizam o Método Limpar.

  • Descobrir quantos elementos a coleção contém com a Propriedade de Contagem.

  • Verificar se um elemento específico está presente com o Método Contém.

  • Retornar um elemento específico de uma coleção com o Propriedade do Item.

  • Realizar iteração através da coleção completa com o For each... Next demonstrativo (Visual Basic).

    Observação:

    Embora o Visual Basic Collection o objeto tem funcionalidade idêntica do Collection objeto no Visual Basic 6.0, os dois não pode interoperar em um ambiente COM.

    Cuidado:

    Iterar em um Visual Basic Collection não é um procedimento de thread-safe. Mesmo que a coleção esteja sincronizada, outros encadeamentos ainda podem modificar a coleção.Isso faz com que o enumerador gere uma exceção.Para garantir segurança de segmentos durante a enumeração, bloqueie a coleção ou capture as exceções que resultem de segmentos que foram feitos por outros encadeamentos.Para maiores informações sobre como bloquear um elemento de programação, acesse Instrução SyncLock.

Exemplo

O exemplo a seguir cria o Collection objeto names e uma caixa de diálogo com a qual um usuário pode adicionar objetos (nomes) à coleção. Em seguida são exibidos os nomes na coleção, e finalmente a coleção é desocupada sem se descartar o objeto Collection.

Para ver como isso funciona, selecione o comando Adicionar Classe do menu Projeto e declare uma variável pública chamda instanceName ao nível de módulo de nameClass(tipoPublic instanceName) para manter os nomes de cada instância.Deixe o nome padrão como nameClass.Copie e cole o código seguinte na seção Geral de outro módulo, e em seguida inicie-o com a declaração classNamer em outro procedimento.(Esse exemplo funciona somente com aplicativos host que suportem classes.)

Public Class nameClass
    Public instanceName As String
End Class
Sub classNamer()
    ' Create a Visual Basic Collection object.
    Dim names As New Microsoft.VisualBasic.Collection()
    Dim key As Integer
    Dim msg As String
    Dim name As String
    Dim nameList As String = ""
    ' 1. Get names from the user to add to the collection.
    Do
        Dim inst As New nameClass()
        key += 1
        msg = "Please enter a name for this object." & vbCrLf _
            & "Press Cancel to see names in collection."
        name = InputBox(msg, "Name the Collection items")
        inst.instanceName = name
        ' If user entered a name, add it to the collection.
        If inst.instanceName <> "" Then
            names.Add(inst, CStr(key))
        End If
    Loop Until name = ""
    ' 2. Create and display a list of names from the collection.
    For Each oneInst As nameClass In names
        nameList &= oneInst.instanceName & vbCrLf
    Next oneInst
    MsgBox(nameList, , "Instance Names in names Collection")
    ' 3. Remove elements from the collection without disposing of the collection.
    For count As Integer = 1 To names.Count
        names.Remove(1)
        ' Since Visual Basic collections are reindexed automatically, 
        ' remove the first member on each iteration.
    Next count
End Sub

Requisitos

Namespace:Microsoft.VisualBasic

Assembly: Visual Basic Runtime Library (em Microsoft.VisualBasic.dll)

Consulte também

Referência

Membros do Objeto Coleção

Método GetEnumerator (Objeto da Coleção)