Olá pessoal, preciso armazenar pares de objetos, mas não sei qual collection usar. Se fosse com arrays, eu poderia usar assim:
MyObject[][] pares = new MyObject[n][2];
Pensei em HashMap, mas não sei se ficaria legal, por que é para um chave e um valor, e no meu caso eu preciso armazenar 2 valores, e outra, o HashMap não permite chaves duplicadas.
Gostaria da opinião de vocês pra poder definir o que vai ser o + correto no meu caso.
Eu não sou muito fã do HashMap puro, porque normalmente preciso dos dados ordenados ou por ordem de inserção ( LinkedHashMap ) ou por ordem alfabética ( TreeMap ).
SortedMap < Chave, List < Valor > > lista = new TreeMap < Chave, List < Valor > > ();
Olá!
Não conheço nada pronto na API do Java. Mas pode-se fazer uso de uma técnica de
POG(Programação orientada a gambiarra) :twisted:
Você pode utilizar, por exemplo, um TreeMap e instanciá-lo passando por parâmetro uma implementação (Você deve escrevê-la) de Comparator cujo método compare nunca retorne 0. Só não se esqueça que isso é POG… Logo, podem haver problemas de performance, de lógica, enfim… pode ser que simplesmente não funcione… ou não… :lol:
Pergunta: você quer simplesmente armazenar pares de objetos, como (“BA”, “Bahia”), (“AC”, “Acre”) etc.? Precisa de algum mapeamento especial? Senão um simples [][] ou um ArrayList de [] seria suficiente, como o Aldrin sugeriu.
[quote=thingol]Pergunta: você quer simplesmente armazenar pares de objetos, como (“BA”, “Bahia”), (“AC”, “Acre”) etc.? Precisa de algum mapeamento especial? Senão um simples [][] ou um ArrayList de [] seria suficiente, como o Aldrin sugeriu.
[/quote]