Preciso de uma estrutura como um Map, porém q seja ordenado e permita q os valores (não as chaves) se repitam. A única interface q achei foi SortedMap, mas ela n permite adicionar valores iguais, mas uma vez friso q preciso q os VALORES se repetiam, não as chaves, até pq chaves repetidas seria meio absurdo =PPP
Serve n, eu estava usando justamente essa implementação, mas ele não permite valores repetidos, inclusive é logo umas das primeiras linhas da descrição da TreeMap na API, ele fala q n permite values repetidos, e tive a infeliz oportunidade de confirmar isso na prática =PP
furutani
Olá acolon,
Voce deve estar enganado, TreeMap permite valores repetidos, assim como outros Map as chaves sim são unicas.
As chaves do Map são do tipo Set, isto é, são unívocas (não se repetem).
Os valores são do tipo Collection, isto é, podem se repetir;
[ ]
LPJava
jPscoralicK:
As chaves do Map são do tipo Set, isto é, são unívocas (não se repetem).
Os valores são do tipo Collection, isto é, podem se repetir;
[ ]
Map nao tem nada ver com Set, Map sao apenas Map nao tem relação nenhuma com Set, pois Set deriva de Collection, a unica semelhante eh que ambos nao aceita valores repetidos… mais isso nao quer q Map é do tipo Set. Se eu tiver errado tb pode me corrigir
T
thingol
Você gostaria de algo semelhante ao multimap (que implementa isso em C++). Só que o Java não tem isso pronto na biblioteca java.util.*.
Você pode fazer uma de duas coisas:
Usar um Map< Chave, List < Valor > >, ou talvez Map < Chave, Set < Valor > > - depende do seu problema é claro! - e controlar manualmente os valores na lista (ou no conjunto);
Aconteceram um série de coincidências q me levaram a fazewr tal pergunta, qd disse q uma SortedMap não aceitava valores repetidos é pq depois vi q tinha olhado na classe errada =P e pra complentar a coincidência, estava ocorrendo um erro no meu sistema q me levava a crer q ess comportamento realmente acontecia. Mais uam vez desculpas e obrigado =PPP
seufagner
Cara, TreeMap implementa SortedMap e funciona do jeito que voce quer.