Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

vale a pena limitar o tamanho do arryalist

Vi que antigamente devido a limitação de hardware era necessário ser preciso na locação de memoria (escolher o tipo da variável conforme a necessidade, sem desperdício de espaço). Ja que hoje em dia temos uma abundância de processamento, não é mais valido trabalhar com um array com o tamanho máximo ao invés de ficar recriando uma lista toda vez que eu quiser aumentar um array ?

2 respostas
solução!

Boa Tarde Jonathan. A classe ArrayList é uma implementação da interface List que utiliza um vetor para armazenar elementos. Uma vez que vetores tem tamanho fixo em Java, a classe ArrayList se encarrega de criar um novo vetor (internamente) com um tamanho maior e copiar seus elementos correntes para esse novo vetor sempre que for necessário.

O vetor interno da classe ArrayList é recriado quando há remoções de elemento, adições de elemento no fim da lista além da capacidade dimensionada e adições de elementos que não no final da lista.

Como a operação de recriação do vetor é custosa, busque dimensionar previamente o tamanho da lista, para tal, utilize o construtor sobrecarregado ArrayList(int) enviando como argumento a capacidade inicial da lista. A capacidade inicial padrão de um objeto ArrayList é de 10 elementos.

Utilize ArrayList conforme sua necessidade, não precisa ficar recriando Arrays para armazenar o mesmo Tipo de Referência apenas tenha consciência de que o ArrayList se redimensiona automaticamente porém ocorre um novo processamento interno.

Excelente resposta! Muito Obrigado Clovis Picoli !

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software