Collection qual objeto que contem indice de controle?

Qual objeto do Collection que usamos que existe um indice de controle
e armazena objetos?

HashTable
HashMap

ou existe outros ?

abs

ArrayList

Esses dois não têm o que quer. O indice de controle é uma caracteristica de todos os objetos que implementam a interface List. (ArrayList, LinkedList, etc…)

Um hashtable possui um índice de controle e os dados da tabela de hash são buscados a partir de seu índices.
Me corrijam se eu tiver enganado!

A interface java.util.Map é muito útil para armazenar pares de chave/valor. Lembrando q os dados não são apresentados em ordem.

[quote=aquilante]Um hashtable possui um índice de controle e os dados da tabela de hash são buscados a partir de seu índices.
Me corrijam se eu tiver enganado!
[/quote]

Vc está enganado já que o hashCode não existe no Map. E mesmo que existisse, ele não é acessivel de fora do Map.

A ordem depende da implementação que usar. LinkedHashMap apresenta na mesma ordem que os objetos foram inseridos.

Mas uma duvida o HashMap pode ser usado como um indice conforme abaixo

podendo ser uma campo chave de uma tabela sim ou não essa é minha duvida…???

abs

/* HashMap de parametros utilizados no relatório. Sempre instanciados */
Map parameters = new HashMap();
parameters.put(“COLUNA”, valor);

Tudo bem sergiotaborda, isso me confunde um pouco ainda, mas vamos la.
Na interface java.util.Map ultilimamos chave/valor para associarmos os ítem de nossa coleção.
Um exemplo para melhorar:

HashMap<String, Integer> vertice = new HashMap<String, Integer>();
vertice.put("origem:", grafo.getOrigem());
vertice.put("destino:", grafo.getDestino());
vertice.put("custo:", grafo.getCusto());
result.add(vertice);
System.out.println("[" + result + "]"); //Dessa forma eu imprimo e estrutura
System.out.println("["+ result.hashCode() + "]"); //Dessa forma me retorna o valor do hashCode 

O q vc quis dizer com não pode ser acessado de fora do map?

Um abraço! :lol:

Caros, o titulo do topico é “… que contem indice …”

Entende-se por indice um numero, não uma String. ok, a pergunta não foi bem formulada. “indice” poderia ser a chave.

Mas a chave e o hashCode são coisas diferentes. Quando vc quer um elemento do mapa vc pede pela chave, não pelo hashcode. Ou seja, vc não faz mapa.get(342464562345345).
Era a isso que me referia. O hashCode é usando internamente pelo HashMap ( mas não pelo TreeMap) então Map não é uma estrutura com indice de controle ( whatever that means … ) ele é uma estrutura com pares chave- valor.