L'interface Set modélise un ensemble d'objets dans lequel on
ne peut pas trouver de doublons.
Un Set ne peut pas contenir plus d'un objet null.
Implémentations HashSet et LinkedHashSet
TreeSet implémente NavigableSet
log(n) time
cost for the basic operations (add, remove and contains).
https://dzone.com/articles/the-hidden-contract-between-equals-and-comparable
TreeSet implémente SortedSet, alors que HashSet n'implémente
"que" Set.
Dit autrement, TreeSet implémente un
ensemble ordonné : si tu itères sur les éléments du TreeSet, tu les obtiendras
en ordre croissant (selon la méthode compareTo() de Comparable).
Par ailleurs, TreeSet repose sur la méthode compareTo() pour
fonctionner. HashSet repose sur la méthode hashCode().
Si tu as besoin d'avoir un ensemble trié -> TreeSet
Sinon -> HashSet (car plus rapide)
List est la solution si on veut garder l'ordre par defaut, mais si on doit réordonner les données il faut utiliser une autre structure comme TreeSet .
List est la solution si on veut garder l'ordre par defaut, mais si on doit réordonner les données il faut utiliser une autre structure comme TreeSet .
Source : http://www.sergiy.ca/guide-to-selecting-appropriate-map-collection-in-java
Sorted vs Ordred : https://stackoverflow.com/questions/1084146/what-is-the-difference-between-an-ordered-and-a-sorted-collection
Aucun commentaire:
Enregistrer un commentaire
to criticize, to improve