Ir para o conteúdo
nakuro

[Resolvido]HashMaps

Mensagens Recomendadas

nakuro    0
nakuro

Boas

Como faço para percorrer um hash map?

Eu tenho um hash map com as keys a serem Strings (nome_do_filme) e tenho a referenciado para cada key um objecto (DVD) que contem varios metodos com por exemplo getnomerealizador();

A minha questão é dado um nome de um realizador devolver o nome do filme, ou seja dado um nome que vai estar dentro do objecto devolver a key.

E não tou a ver como percorrer uma key uma a uma :wallbash:

Cumprimentos

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Knitter    101
Knitter

Basta obteres o Iterador e percorreres esse iterador.

Iterator it = map.keySet().iterator();

while (it.hasNext()) {
   Object chave = iterator.next();
   Object valor = map.get(key);
}

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Knitter    101
Knitter

Ou...

Iterator it = map.entrySet().iterator();

while(it.hasNext()){ 
    Map.Entry entry = (Map.Entry)it.next();
    String key = (String)entry.getKey();
    String value = (String)entry.getValue();
}

Este está no fórum da sun.... um ou outro funcionará e as diferenças serão minímas.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Rui Carlos    311
Rui Carlos

ou, se for em Java 5 e quiseres percorrer todo o map (o que só faz sentido se houver vários filmes para um mesmo realizador e os quiseres obter todos):

HashMap<String,Object> x=new HashMap<String,Object>();

...

for(Object filme:x.values())
{
    ...
}

(onde está Object, devia ser DVD).

EDIT: podes usar directamente o 'values'...

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
nakuro    0
nakuro

Ja consegui :biggrin:, realmente com esses metodos de java 5 e bem mais facil de se fazer, de qualquer maneira ja fiquei a saber varias formas de fazer :ipool:

obrigado e cumprimentos

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade