Recuperando valor de um Map Hash Map

4 respostas
rockstorm

ola..

Estou com um grande problema, sou novo em java e estou com uma dificuldade.

tenho um array de objetos onde quero listar um componente especifico ex:

Cadastro cadastros [] = {cad, cad2};
onde cad e cad2 são os objetos contendo os campos nome, sobrenome ja populados.

Adicionei no Map:

[code]

Map teste = new HashMap();
for(int i=0;i {
teste.put("nome", cadastros[i].getNome());
teste.put("sobrenome", cadastros[i].getSobrenome());

}

Minha dificuldade não é pegar o valor todo sendo teste ja contem o nome e o sobrenome, e sim recuperar somente o NOME dos objetos.

tentei fazer um for de teste[i] mas nao funciona

grato

4 Respostas

wag182

para vc poder pegar objetos dentro de um Map vc faz o seguinte:

Map map = new HashMap()

map.put(“Nome”, “joselito”);
map.put(“SobreNome”,“Sem nocao”);

// pegando objeto

// eh necessario fazer o typeCasting para poder converter de Object p/ String

String nome = (String) map.get(Nome);

String sobreNome = (String) map.get(SobreNome);

espero ter ajudado…

marcosbrandao

Você tbm pode usar o metodo toString:

String nome = map.get("Nome").toString();
String sobreNome = map.get("SobreNome").toString();
christianovale

Olha só uma coisa…
Na Collection HashMap vc deve associar um nome (chave) a um objeto.
Esta chave deve ser única.

No código que vc postou vc faz um laço que inclui ‘n’ objetos para a mesma chave: neste caso “nome” e “sobrenome”. Ou seja no final quando vc for recuperar o objeto relacionado a estas chaves, só irá te retornar o ultimo dado colocado, gerando um erro de logica no seu algoritmo.

Tente utilizar uma outra Collection como ArrayList ou Vector.
Assim vc poderá Iterar sobre esta coleção e recuperar os valores que vc deseja.

espero ter ajudado.

sucesso!

rockstorm

muito obrigado…voce estava certo…vou ter que usar ArrayList…

grato

Criado 31 de maio de 2007
Ultima resposta 31 de mai. de 2007
Respostas 4
Participantes 4