Páginas

segunda-feira, 20 de agosto de 2012

Maps em Java.

 

Opá você esta precisando armazenar valores do tipo chave, valor… cara tu precisa usar map!!!´

É bem simples, você deve instanciar da seguinte forma:

 

Map<String, String> mapa = new HashMap<String, String>();

E para adicionar valores use,

        mapa.put("1", "um");
        mapa.put("2", "dois");

E para recuperar os valores

System.out.println(mapa.get("1"));

Mas guardar um objeto inteiro no valor…

 

Map<String, Contato> mapaDeContato = new HashMap<String, Contato>();

Neste exemplo estou guardando objetos do tipo Contato, você pode modificar para o que estiver usando.

E para adicionar valores

mapaDeContato.put("1", new Contato("é 1", "um"));
mapaDeContato.put("2", new Contato("é 2", "dois"));
mapaDeContato.put("3", new Contato("é 3", "tres"));

E para recuperar

System.out.println("Contato: " + mapaDeContato.get("2"));

Bom mas você não quer guardar um objeto complexo, você quer guardar uma lista de strings…

Map<String, List<String>> mapaDeStrings = new HashMap<String, List<String>>();

bang!!! Smiley de boca aberta

Para adicionar

mapaDeStrings.put("1", new ArrayList() );

Para adicionar mais itens no arrayList

List<String> lista = mapaDeStrings.get("1");
        lista.add("testeA");
        lista.add("testeB");
        lista.add("testeC");

 

Lembrando que seguindo a dica da Jacques, use TreeMap se precisar de um map ordenado, e um HashMap se não precisar!!!

 

Fonte:

Nenhum comentário:

Postar um comentário