Vetores e ArrayLists

6 respostas
Alexandre_Laranja

Qual a diferença entre vetores e arraylists em java?
quando devo usar vetor e quando devo usar arraylist?

6 Respostas

fabim

Vc pergunta diferença entre objetos VECTOR e ARRAYLIST, ou entre arrays ( [] ) e Lists?

Alexandre_Laranja

ok vou reformular a pergunta…

Pode se dizer que vetor ( [ ] ) em Java é uma classe que armazena um conjunto de objetos. Quero comparar um vetor ( [ ] ) em Java com a classe ArrayList.
Quando devo usar vetor e quando devo usar um ArrayList?

fabim

Pra construir um array, vc precisa conhecer de antemão o tamanho do array.
O arrayList nao. Vc pode constui-lo, e depois ir adicionando e removendo elementos dinamicamente.

Pense em um ArrayList como um “array anabolizado”.

Alexandre_Laranja

pow isso ja é uma caracteristica legal, mas não tem mais caracteristicas que diferenciem os dois?!

acho que até sei uma, no arraylist eu consigo colocar qualqwuer tipo de objeto, certo?!

D
Alexandre Laranja:
pow isso ja é uma caracteristica legal, mas não tem mais caracteristicas que diferenciem os dois?!

acho que até sei uma, no arraylist eu consigo colocar qualqwuer tipo de objeto, certo?!

array também. Olha só:
Object[] objetos = new Object[10];

Um método que procura algo em um ArrayList e um que procura algo em um vetor pra você ver uma diferença básica:

Desobrir se existe determinada String em um vetor:
for(int i =0; i < stringsVt.length; i++) {
	if(stringsVt[i] == "C") {
		return true; 
	}
}
return false;

Já num ArrayList:

stringsAL.contains("C");
ViniGodoy

A menos que vc vá para uma competição de códigos, vc quase nunca vai usar o vetor primitivo.

Para começar, você pode escolher o tipo de implementação de um List. Pode ser o ArrayList, LinkedList, ou as listas do pacote java.util.concurrent. As classes de list são interoperaveis com outras collections, como os Set. Há mais suporte em código para o list, isto é, dezenas de métodos uteis como contains e disjoint. Também existem proxies que reforçam thread-safety ou imutabilidade na lista, de maneira opcional.

Como o pessoal já falou, a classe de List também é dinâmica, ou seja, você não precisa se preocupar com o tamanho da lista de antemão.

Lembrando que é uma boa prática usar listas sempre através da interface list, não do seu tipo primitivo. Esse tópico aqui explica o porquê. Já esse outro, mostra algumas coisas que você pode fazer com List.

Criado 2 de outubro de 2008
Ultima resposta 2 de out. de 2008
Respostas 6
Participantes 4