Existe alguma diferença significativa entre
ArrayList
LinkedList
Vector.
?
Obrigado…
Existe alguma diferença significativa entre
ArrayList
LinkedList
Vector.
?
Obrigado…
ArrayList: Usa um array para implementar a lista. É a lista mais rápida de todas quando o assunto é iterar sobre os elementos. Tem performance ruim ao inserir ou remover elementos do meio da lista . Ocasionalmente existem custos de relocação de memória. Quase nenhum overhead a cada elemento inserido (em torno de 8 bytes, mas uma única vez para todos os elementos da lista).
LinkedList: Usa uma lista encadeada para implementar a lista. Boa performance para iterar, péssima performance no método get(). Excelente performance para se inserir e remover elementos no meio da lista. Custo linear de relocação de memória. 16 bytes de overhead a cada elemento inserido.
Vector: Igual ao ArrayList, porém com todos os método sincronizados (o que o torna mais lento). Essa sincronização geralmente é inútil, mesmo em sistemas multi-thread. Possui uma série de métodos duplicados, pois ele é anterior a Java Collections Framework (por exemplo add e addElement). Seu uso não é mais recomendado desde o Java 1.2.
Veja o link que o entanglement postou acima para exemplos de uso do ArrayList e LinkedList. Ambos devem ser usados através da interface List.