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

Thread

Fala galera! Estou com uma dúvida. Tenho uma lista de HashMap onde armazeno um Object(Pixel) que eu criei. Dentro dele tenho um outro Object (Cor) que armazena int.

O Problema é que quando vou imprimir com System.out.println() ele: -nao imprime na ordem da contagem -nao imprime tudo que esta na lista(a lista é muito grande)

primeiro lugar gostaria de controlar melhor a ordem de saída e imprimir tudo Ajuda?

2 respostas
solução!

Oi Diego,

você pode colocar o código da classe que está utilizando aqui? Ele deveria, sim, imprimir tudo o que está na estrutura de dados.

A questão da ordem, no entanto, é outra: o HashMap é uma estrutura de dados que não trabalha com ordem. Em vez disso, ele usa uma função de espalhamento que muito rapidamente separa os dados em pequenos conjuntos, onde buscas ficam bem mais eficientes.

Aí, conforme você armazena os dados, eles vão caindo em conjuntos diferentes e, assim, perdendo a ordem de inserção.

Se você precisa mesmo de ordem e ainda quiser usar um Map, você pode utilizar um TreeMap, que vai manter a ordem pra você. :-) Fez sentido?


Uma leitura complementar que pode ajudar é a apostila aberta de Estruturas de Dados (em especial , a explicação da diferença entre Tree e Hash) que a Caelum disponibiliza em: https://www.caelum.com.br/apostilas/

Vlww Cecilia!!