Saltar para: Post [1], Comentários [2], Pesquisa e Arquivos [3]



O ArrayList, que faz parte do Java Collections Framework (JCF), é uma função bastante útil que nos permite criar Arrays dinâmicos, e ainda oferece-nos muitos métodos bastante úteis para manipular o conteúdo do mesmo.

Com este artigo, irei demonstrar como se cria um ArrayList para guardar Strings, neste exemplo, iremos guardar o nome de professores.

Passemos à acção:

Primeiro, temos de importar o pacote que contém as ArrayLists:

import java.util.*;

Se desejar, poderá também importar o seguinte pacote:

import static java.lang.System.out;

Desta forma, irá evitar estar sempre a escrever o palavrão "System.out.println", bastando apenas escrever out.println , por exemplo.

Agora, dentro da classe, iremos declarar a ArrayList:

//Declaração da ArrayList
ArrayList<String> professores = new ArrayList<String>();

Aí está, uma ArrayList do tipo String com o nome professores, de tamanho infinito (podiamos limitar o tamanho escrevendo entre os () o número máximo de registos que a ArrayList pode conter no máximo).

Agora, vamos criar um método que adiciona 3 registos:

public void adicionaProfs()
{
professores.add("Jorge");
professores.add("Paulo");
professores.add("Silvio");
}


Como pode ver, é bastante simples adicionar um elemento à ArrayList, bastando para isso usar o método add().

Mais exemplos de operações numa arrayList:


  • Adicionar um novo professor com nome a ser introduzido pelo utilizador:


public void criarNovoProf(String nome)
{
professores.add(nome);
out.println ("Foi adicionado um professor com o nome "+nome);
}



  • Listar o nome de todos os professores:

  • public void listarProfessores()
    {
    out.println("Lista de Professores");
    for (String nome : professores)
    out.println(nome);
    out.println("========================================");
    }



  • Escrever no ecrã, o número total de registos:


public void tamanhoDaLista()
{
int a = professores.size();
out.println("A lista tem "+a+" elementos");
out.println("==========================");
}



  • Verifica, se um nome introduzido pelo utilizador, existe na ArrayList:

  • public void existe(String nome)
    {
    int i=0;
    for (String profs : professores)
    {
    if (profs.contains(nome)==true)
    {
    i++;
    }
    }
    if (i==0)
    out.println("Não Existe");
    if (i>0)
    out.println("Foram encontradas "+i+" ocorrencias do nome "+nome);
    out.println("=================================================");
    }



  • Apaga todos os registos da ArrayList


public void apagarTudo()
{
professores.clear();
out.println("Todos os registos foram apagados");
}



  • Apaga um elemento cujo nome é introduzido pelo utilizador

  • public void apagaElemento(String nome)
    {
    professores.remove(nome);
    }



  • Verifica se a ArrayList está vazia:

  • public void verificarVazio()
    {
    if (professores.isEmpty()==true)
    out.println("Está Vazio");
    else if (professores.isEmpty()==false)
    out.println("Não está vazio");
    }


    Pode encontrar muitos mais métodos para usar nas ArrayLists neste site:

    http://java.sun.com/javase/6/docs/api/java/util/ArrayList.html

    Se quiser o código pronto a testar no Bluej, está aqui disponivel para copy paste:

    /**
    * Programa que usa uma ArrayList para guardar os nomes
    * dos professores.
    * Permite a utilização de vários métodos nessa
    * ArrayList.
    *
    * @author Fábio Domingos
    * @version 1.0
    */
    import java.util.*;
    import static java.lang.System.out; 


    public class List
    {
    //Declaração da ArrayList
    ArrayList<String> professores = new ArrayList<String>();
    //Adiciona 3 professores à lista
    public void adicionaProfs()
    {
    professores.add("Jorge");
    professores.add("Paulo");
    professores.add("Silvio");
    out.println("Foram adicionados automaticamente 3 professores");
    out.println("==============================================");
    }
    //Adiciona à lista um professor com nome definido pelo utilizador
    public void criarNovoProf(String nome)
    {
    professores.add(nome);
    out.println ("Foi adicionado um professor com o nome "+nome);
    out.println ("===========================================");
    }
    public void listarProfessores()
    {
    out.println("Lista de Professores");
    for (String nome : professores)
    out.println(nome);
    out.println("========================================");
    }
    public void tamanhoDaLista()
    {
    int a = professores.size();
    out.println("A lista tem "+a+" elementos");
    out.println("==========================");
    }
    public void existe(String nome)
    {
    int i=0;
    for (String profs : professores)
    {
    if (profs.contains(nome)==true)
    {
    i++;
    }
    }
    if (i==0)
    out.println("Não Existe");
    if (i>0)
    out.println("Foram encontradas "+i+" ocorrencias do nome "+nome);
    out.println("=================================================");
    }
    public void apagarTudo()
    {
    professores.clear();
    out.println("Todos os registos foram apagados");
    }
    public void apagaElemento(String nome)
    {
    professores.remove(nome);
    }
    public void verificarVazio()
    {
    if (professores.isEmpty()==true)
    out.println("Está Vazio");
    else if (professores.isEmpty()==false)
    out.println("Não está vazio");
    }
    }


Bom, espero que tenham gostado, dúvidas e questões nos comentários. Obrigado.

Autoria e outros dados (tags, etc)

publicado às 19:27
editado por Fábio Domingos em 18/8/10 às 02:49


23 comentários

De Gilmarzinho.com a 15.08.2012 às 03:44

Cara!
Muito obrigado!
Tu explica muito bem! Parabéns pelo excelente trabalho.

Me ajudou muito!
Vou guardar aqui nos favoritos. Com certeza tem muita coisa boa pra ler no teu site.

Té.

De João a 31.10.2012 às 13:24

A mim dá um erro que diz: does not have main method.

Alguem sabe o que fazer?

De Eduardo a 21.07.2015 às 21:50

Muito bom o tutorial, explicado de forma simples.
Obrigado.

De Produtividade Total a 12.11.2015 às 00:13

Me ajudou bastante.

De Simone a 28.09.2016 às 02:23

Boa noite,,
Obrigada gostei muito, me ajudou bastante na minha pesquisa..
Abraços

Comentar post


Pág. 2/2



Mais sobre mim


Pesquisar

Pesquisar no Blog

Arquivo

  1. 2013
  2. J
  3. F
  4. M
  5. A
  6. M
  7. J
  8. J
  9. A
  10. S
  11. O
  12. N
  13. D
  14. 2012
  15. J
  16. F
  17. M
  18. A
  19. M
  20. J
  21. J
  22. A
  23. S
  24. O
  25. N
  26. D
  27. 2011
  28. J
  29. F
  30. M
  31. A
  32. M
  33. J
  34. J
  35. A
  36. S
  37. O
  38. N
  39. D
  40. 2010
  41. J
  42. F
  43. M
  44. A
  45. M
  46. J
  47. J
  48. A
  49. S
  50. O
  51. N
  52. D
  53. 2009
  54. J
  55. F
  56. M
  57. A
  58. M
  59. J
  60. J
  61. A
  62. S
  63. O
  64. N
  65. D
  66. 2008
  67. J
  68. F
  69. M
  70. A
  71. M
  72. J
  73. J
  74. A
  75. S
  76. O
  77. N
  78. D
  79. 2007
  80. J
  81. F
  82. M
  83. A
  84. M
  85. J
  86. J
  87. A
  88. S
  89. O
  90. N
  91. D