ArrayList
Ao contrário das matrizes comuns, o
ArrayList do pacote
java.util é um array de expansão automática. Ao criar um objeto do tipo
ArrayList, você não precisa especificar a sua dimensão. Por exemplo,
ArrayList lista = new ArrayList();
Vantagens ArrayList em comparação com um array regular:
- acesso rápido a elementos por índice em tempo constante
O(1);
- acessar elementos por valor em tempo linear
O(n);
- permite que você armazene qualquer valor, incluindo
null.
Fraquezas ArrayList:
Inserir/remover um elemento causa a substituição de todos os elementos colocados "à direita" na lista uma posição à esquerda, ou seja, funciona em tempo linear O(n);
Lembre-se que as listas podem conter apenas objetos, portanto, se você deseja armazenar números, use Integer em vez de int. Integer é o nome de uma classe e um objeto dessa classe pode conter um valor inteiro. Você pode ler mais sobre classes e objetos aqui: introdução à programação orientada a objetos.