hugalves:
Como é que vcs sabem qual collection usar, quando usar? Eu me enrolei usando HashMap. Tem algum link, com exemplos, que vcs podem indicar para ter eu maior embasamento no uso de Collections??
Valeu a quem respondeu!!
A API de coleções no java ( chamada JCF : Java Collections Framework) é baseada em interfaces.
As interfaces dizem o que vc pode esperar da coleção. São interfaces: List, Set, Map
As implementações dizem com que eficiencia a coleção poderá executar o que se espera dela.
São implementções: ArrayList, LinkedList , LinkedHashSet, HashSet, HashMap, LinkedHashMap, TreeSet, TreeMap
Set = Uma coleção normal. Não aceita duplicados ( ou seja, não consegue colocar o mesmo objeto duas vezes)
List = Pode conter duplicados e os elementos ficam numa ordem associada a indice ( como um array)
Map = Um coleção de pares chave-valor. Vc pode associar o valor a uma chave e obtê-lo usando sómente a chave.
o prefixo Linked indica que a implementação usa cadeias. Isso mantém a ordem de insersão e acelera adições e iterações. contudo diminiu a eficiencia de remoções e procuras.
o prefixo Hash significa que a implementação é baseada na função de hash do objeto. (hashCode())
o profixo Tree signfica que a implementação é baseada na implementação de Comparable ou Comparator.
Hash… é melhor no caso geral, Tree é melhor quando os objetos tem uma ordem intrinseca ( como numeros, datas ou strings)
Eu escrevi algo sobre isso no meu blog