Como: Criar uma coleção de objetos

Como com qualquer objeto, você declara uma variável para armazenar o objeto e, em seguida, cria o objeto coleção e o atribui para a variável.

Para um objeto coleção, você pode usar tanto a classe de coleção Coleção de Classes do Visual Basic como .NET Framework.Em particular, você pode criar uma coleção Generic usando uma das classes no namespace System.Collections.Generic.Uma coleção genérica é útil quando cada item na coleção tem o mesmo tipo de dados.Coleções genéricas aplicam tipamento forte , permitindo que apenas o tipo de dados desejado seja adicionado.Para obter mais informações, consulte Como: Definir conjuntos de fortemente tipado.

Depois que o objeto da coleção é criado, você pode adicionar e remover itens e acessar itens na coleção.

Dois exemplos sobre como criar coleções a seguir.Cada coleção contém itens String e associa uma chave String com cada item.Os dois primeiros procedimentos criam uma coleção a classe de coleção Visual Basic.Os dois últimos procedimentos criam uma coleção usando uma classe de coleção genérica .NET Framework.

Criar uma coleção usando a classe coleção Visual Basic

  1. Declare e crie uma variável Visual Basic Collection, como mostra o exemplo a seguir.

    Dim sampleVisualBasicColl As New Microsoft.VisualBasic.Collection()
    

    A coleção na sampleVisualBasicColl pode aceitar itens de qualquer tipo de dados.

  2. Use o Método Add (objeto da coleção) para adicionar elementos à coleção.O exemplo a seguir cria quatro elementos String e os adiciona à coleção.Ele cria um valor exclusivo String como chave para cada novo elemento e passa esse valor para o método Add.

    Dim item1, item2, item3, item4 As String
    item1 = "Items"
    item2 = "In"
    item3 = "A"
    item4 = "Collection"
    sampleVisualBasicColl.Add(item1, "firstkey")
    sampleVisualBasicColl.Add(item2, "secondkey")
    sampleVisualBasicColl.Add(item3, "thirdkey")
    sampleVisualBasicColl.Add(item4, "fourthkey")
    

    O argumento Key é opcional de uma coleção Visual Basic.

  3. Se você quiser remover um elemento da coleção, você pode usar o Método Remove (Objeto Coleção), identificando o elemento por seu índice posicional ou por sua chave opcional.O exemplo a seguir ilustra isto:

    ' Remove the first element of the Visual Basic collection.
    sampleVisualBasicColl.Remove(1)
    ' Remove the element with the key "secondkey".
    sampleVisualBasicColl.Remove("secondkey")
    

    Observe que quando um elemento é removido de uma Visual Basic Collection, os valores de índice são renumerados de 1 até o valor da Propriedades de Contagem ( Objeto de coleção)..

Utilizar For Each... Next para processar os elementos de sua coleção Visual Basic

  1. Declare uma variável do tipo armazenado na coleção.Para o exemplo anterior, declare uma variável do tipo String, como mostra a exemplo a seguir.

    ' Insert code from the preceding example.
    Dim aString As String
    
  2. Use um For each... Next demonstrativo (Visual Basic) para examinar cada elemento da coleção.O exemplo a seguir procura por uma determinada string e exibe-a se encontrada.

    For Each aString in sampleVisualBasicColl
        If aString = "Collection" Then
            MsgBox(aString)
        End If
    Next aString
    

Criando uma coleção usando uma classe de coleção genérica.

  1. Declare e crie uma variável .NET Framework System.Collections.Generic.Dictionary<TKey, TValue>, como mostra o exemplo a seguir.

    Dim sampleGenericColl As New System.Collections.Generic.Dictionary(Of String, String)
    

    A variável sampleGenericColl contém uma coleção type-Safe que aceita itens e as chaves apenas do tipo String.

  2. Use o método Dictionary<TKey, TValue>.Add para adicionar elementos à coleção.O exemplo a seguir cria quatro elementos String e os adiciona à coleção.Ele cria um valor exclusivo String como chave para cada novo elemento e passa esse valor para o método Add.

    Dim item1, item2, item3, item4 As String
    item1 = "Items"
    item2 = "In"
    item3 = "A"
    item4 = "Collection"
    sampleGenericColl.Add("firstkey", item1)
    sampleGenericColl.Add("secondkey", item2)
    sampleGenericColl.Add("thirdkey", item3)
    sampleGenericColl.Add("fourthkey", item4)
    

    O argumento Key é necessário nesta coleção genérica.

  3. Para remover um elemento da coleção, use o método IDictionary<TKey, TValue>.Remove.Você deve fornecer a chave para identificar o elemento a ser removido.O exemplo a seguir ilustra isto:

    If Not sampleGenericColl.Remove("thirdkey")
        ' Insert code to handle "thirdkey" not found in collection.
    End If
    

    Você pode usar uma instrução For Each...Next para executar um loop e processar os elementos de uma coleção, como demonstra o procedimento a seguir.

Utilizar For Each... Next para processar os elementos de sua coleção genérica

  1. Declare uma variável do tipo armazenado na coleção.Para o exemplo anterior, declare uma variável do tipo String, como mostra a exemplo a seguir.

    ' Insert code from the preceding example.
    Dim aPair As KeyValuePair(Of String, String)
    
  2. Use um For each... Next demonstrativo (Visual Basic) para examinar cada elemento da coleção.O exemplo a seguir procura por uma determinada string e exibe-a se encontrada.

    For Each aPair In sampleGenericColl
        If aPair.Value = "Items" Then
            MsgBox(aPair.Key & " -- " & aPair.Value)
        End If
    Next aPair
    

Consulte também

Tarefas

Como: Criar uma matriz de objetos

Conceitos

Coleção de Classes do Visual Basic

Referência

System.Collections

System.Collections.Generic

System.Collections.Specialized

Objetos de Coleção (Visual Basic)