Armazenar Objetos

3 respostas
ricardocomp

Olá pessoal estou com uma dúvida cruel,
eu tenho um vetor e quero armazenar objetos dentro desse vetor mas os objetos só podem ser guardados em posições vazias. Por isso
eu queria saber qual dessas duas técnicas
eh mais eficiente: guardar um contador para indicar qual a próxima posição vazia ou procurar por uma posição
vazia toda vez.

Alguém pode me ajudar???
:lol:

3 Respostas

Andre_Fonseca
ricardocomp:
Olá pessoal estou com uma dúvida cruel, eu tenho um vetor e quero armazenar objetos dentro desse vetor mas os objetos só podem ser guardados em posições vazias. Por isso eu queria saber qual dessas duas técnicas eh mais eficiente: guardar um contador para indicar qual a próxima posição vazia ou procurar por uma posição vazia toda vez.

Alguém pode me ajudar???
:lol:

Dê uma estuda em Collection

Poderia usar um ArrayList

ArrayList<Objeto> listaObjetos = new ArrayList<Objeto>();

Objeto obj1 = new Objeto();
obj1.setParametros();

Objeto obj2 = new Objeto();
obj2.setParametros();

listaObjetos.add(obj1);
listaObjetos.add(obj2);

O java tem várias estruturas de dados já implementadas pra você, listas, filas, pilhas, hashmaps, de uma lida no tutorial

Abs

ricardocomp

Valeu André,
Obrigado pela ajuda mas a minha dúvida eh mais simples
eu tô ligado no Framework collections,
eu acho q eu já consegui resolver pensando dessa
forma, se vc tem um vetor ele estático e ñ eh dinâmico
igual as estruturas List, se eu quero ‘‘guardar’’ um objeto
em uma posição vazia desse vetor entaum e melhor vc
guardar um contador do q varrer ele toda hora em busca
de posição vazia, eu vou gastar muito mais tempo
nessa tarefa conclui q para o meu caso eh melhor
ter um contador, mas deve existir outros casos
em q varrer o vetor toda hora deve ser mais eficiente
do q ter um contador de posições vazias.

valeu abraço.

L

ricardocomp:
Valeu André,
Obrigado pela ajuda mas a minha dúvida eh mais simples
eu tô ligado no Framework collections,
eu acho q eu já consegui resolver pensando dessa
forma, se vc tem um vetor ele estático e ñ eh dinâmico
igual as estruturas List, se eu quero ‘‘guardar’’ um objeto
em uma posição vazia desse vetor entaum e melhor vc
guardar um contador do q varrer ele toda hora em busca
de posição vazia, eu vou gastar muito mais tempo
nessa tarefa conclui q para o meu caso eh melhor
ter um contador, mas deve existir outros casos
em q varrer o vetor toda hora deve ser mais eficiente
do q ter um contador de posições vazias.

valeu abraço.

A questão do contador é que quando for removida um elemento na segunda posição por exemplo, e você tem preenchido 10 elementos, você precisaria re-arranjar o vetor para não ficar com um furo, senão seu contador ficaria errado.

Com a varredura, se ordem não importa pra vc, vc não precisaria disso, já que você saia varrendo o array até achar uma posição em branco.

Mas a primeira opção de guardar o indice é a mais rápido.

Bom, não sei o que vc quer fazer, parece que vc não quer usar Collections, mas uma coisa que vc tvz pudesse fazer é usar “Lista ligada”.

[]'s

Criado 29 de agosto de 2008
Ultima resposta 29 de ago. de 2008
Respostas 3
Participantes 3