Compartilhar via


Usando coleções para gerenciar vários objetos

Nesta lição, você aprenderá a usar uma coleção para gerenciar grupos de objetos.

Numa lição anterior, você aprendeu como usar matrizes para gerenciar grupos de variáveis.Enquanto você usava matrizes para gerenciar grupos de objetos, o Visual Basic também tem um tipo especial de objeto denominado uma coleção que pode ser usada para armazenar e recuperar grupos de objetos semelhantes.

Como numa matriz, cada item em um objeto Collection possui um índice que pode ser usado para identificar o item.Além disso, cada item em um objeto Collection possui uma chave, um valor String que pode ser usado para identificar o item.A vantagem de usar uma chave é que você não precisará se lembrar do índice de um item; em vez disso, você pode consultá-lo usando um nome significativo.

Criando uma coleção

Coleções são úteis quando seu programa usa várias instâncias da mesma classe.Por exemplo, olhe a classe Players que você criou na lição anterior.É provável que você precise de vários objetos Players para representar uma equipe de beisebol.

A primeira etapa na criação de uma coleção é criar uma instância de um objeto Collection, conforme mostrado na seguinte declaração.

Dim baseballTeam As New Collection

Depois de criar o objeto Collection, você pode usar o método Add para adicionar itens a ele e o método Remove para excluir os itens.Ao adicionar itens, primeiro especifique o item para adicionar e em seguida, especifique o valor String a ser usado como uma chave.

baseballTeam.Add(playerObject, "Player's Name")

Ao remover um item, use a chave para especificar o item a ser removido.

baseballTeam.Remove("Player's Name")

No procedimento a seguir, você adicionará dois novos objetos Players e, em seguida, criará uma coleção team e adicionará os objetos Players, usando a propriedade Position como uma chave.

Tente-o!

Para criar uma coleção de objetos

  1. Abra o projeto Persons que você criou na lição anterior.Se você não o salvou, volte para Criando uma classe a partir de uma classe existente: Usando herança e conclua os procedimentos.

  2. No Solution Explorer, no projeto PlayerTest, selecione o nó Form1.vb e em seguida, no menu View, escolha Code.

  3. No Editor de Códigos, adicione o seguinte à seção de declarações (abaixo da declaração de player2).

    Dim player3 As New Persons.Players
    Dim player4 As New Persons.Players
    Dim team As New Collection
    
  4. No procedimento do evento Form1_Load, adicione o código a seguir.

    With player3
        .FirstName = "Eduardo"
        .LastName = "Saavedra"
        .Number = 52
        .Position = "First Base"
    End With
    
    With player4
        .FirstName = "Karl"
        .LastName = "Jablonski"
        .Number = 22
        .Position = "Pitcher"
    End With
    
    team.Add(player1, player1.Position)
    team.Add(player2, player2.Position)
    team.Add(player3, player3.Position)
    team.Add(player4, player4.Position)
    
  5. No Solution Explorer, no projeto PlayerTest, selecione o nó Form1.vb.Em seguida, no menu View, escolha Designer.

  6. Na Caixa de Ferramentas, arraste um controle ComboBox para o formulário.

  7. Na janela Properties, selecione a propriedade Items e clique no botão .

  8. Em String Collection Editor, digite o seguinte e em seguida, clique em OK.

    Catcher

    First Base

    Pitcher

    Shortstop

  9. Clique duas vezes no controle ComboBox para abrir o Editor de Código e em seguida, insira o código a seguir no manipulador de eventos ComboBox1_SelectedIndexChanged.

    Dim SelectedPlayer As Persons.Players
    SelectedPlayer = team(ComboBox1.SelectedItem)
    MsgBox("Playing " & ComboBox1.SelectedItem & " is " & _
    SelectedPlayer.FullName & "!")
    
  10. Pressione F5 para executar a página.Selecione uma posição da lista suspensa. O jogador para essa posição é exibido em uma caixa de mensagem.

Próximas etapas

Nesta lição, você aprendeu a usar um objeto Collection para gerenciar um grupo de objetos.Neste ponto, você poderá aprender mais sobre coleções em Examinar mais detalhadamente: Usando um for each... Next repetir um conjunto de, ou ir para o próximo grupo de lições e aprender como criar seus próprios controles.

Próxima Lesson: Objetos visíveis: Criando seu primeiro controle de usuário

Consulte também

Tarefas

Examinar mais detalhadamente: Usando um for each... Next repetir um conjunto de

Examinar mais detalhadamente: Substituindo membros

Criando uma classe a partir de uma classe existente: Usando herança

Conceitos

Coleção de Classes do Visual Basic

Outros recursos

Objetos visíveis: Criando seu primeiro controle de usuário