HashMap [Resolvido]

Opa…
Tenho um HashMap já alimentado na chave 1 por exemplo.
Tenho nela: “3”,“4”,“5”.
Quero adicionar o “6” sem perder estes conteúdos já existentes nesta chave.

Com isso ficaria assim:

hashmap.get(1) teria "3","4","5","6"

E ai Jovem… tudo bem?

Não entendi direito o que você quer. Até onde sei, o HashMap associa um valor a uma chave. Não há como associar mais de um valor a mesma chave. Caso queira fazer algo como o que você fez, faria assim.


//Populando map
List<String> vetor = new ArrayList<String>();
vetor.add("3");
vetor.add("4");
vetor.add("5");

Map<Integer, List<String>> map = new HashMap<Integer, List<String>>();
map.put(1, vetor);

//Adicionando valor no map
map.get(1).add("6");

Espero ter ajudado. Até.

Obrigado pela dica dmarcosm mas consegui de outra forma.
Abraço…Valeu a força!

Opa… bom demais.

Posta ai do jeito que você fez pra galera saber também. =]

como é que vc usou o “put()” pra colocar vários valores na mesma chave? usou lista ou vetor?

com lista da pra fazer assim:

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class teste
{
    public static void main(String[] args)
    {
        Map<String, List<String>> map = new HashMap<String, List<String>>();
        List<String> lista = new ArrayList<String>();
        lista.add("A");
        lista.add("B");
        lista.add("C");

        // poe ["A", "B", "C"] no map
        map.put("1", lista);

        // retorna a lista para a chave "1" e adiciona o "D" nela
        map.get("1").add("D");

        // imprime ["A", "B", "C", "D"]
        System.out.println(map.get("1"));

    }
}