Collections Java
Java - Les collections
Java Collections est une collection d'interfaces et classes qui aident à stocker, ordonner et traiter les données efficacement. Ce framework contient plusieurs classes utiles qui contiennent à leur tour des centaines de méthodes, ce qui rend la programmation simple et facile. Les collections réduisent le temps de programmation et augmentent la qualité et les performances.Une collection est un objet qui collecte des éléments dans une seule liste. Une collection représente un ensemble de données homogène. Par exemple, une boite email (collection de mail), ou un répertoire de téléphone(liste des noms et leurs numéros). Ce site contient différents tutoriels sur les collections d'objets avec des exemples pour vous aider à comprendre.
L'architecture du framework Collections de java
Le framework Collections a une architecture hiérarchique pour représenter tous les collections qui contiennent ou héritent des interfaces, implémentations et méthodes comme le tri des objets. Les interfaces sont divisées en deux groupes. L'interface de base est java.util.Collection. L'autre interface est java.util.Map.List
L'interface List est une collection ordonnée et il peut contenir des éléments dupliqués. List hérite les
méthodes de l'interface Collection, l'interface List inclut des opérations comme la manipulation des éléments,
la recherche, le parcours avec Iterator.
Set
L'interface Set élimine les éléments dupliqués. C'est la représentation du modèle mathématique des ensembles en
java. Il hérite les méthodes de l'interface Collection et ajoute la propriété de l'interdiction des éléments en
double qui doivent exister qu'une seule fois. Il stocke les éléments dans une table de hachage qui est un très
bon atout pour les haute performances, mais il ne garantie pas l'ordre d'insertion des éléments lors de
parcours.
SortedSet
L'interface SortedSet hérite les méthodes de l'interface Set. Il maintient les éléments dans l'ordre croissant
ou selon la déclaration de la méthode compare() dans l'interface Comparator passé en argument lors de
l'instanciation de TreeSet.
Map
L'interface Map stocke les pairs clé et sa valeur dans une table de hachage. Une Map ne peut contenir des
éléments en double, chaque clé à une seule et unique valeur. Map peut être implementée avec:
- HashMap: il ne garantie pas l'ordre d'insertion des éléments lors de parcours.
- LinkedList: elle garantie le parcours des éléments basé sur l'ordre de leur insertion.
- TreeMap: elle stocke les éléments triés selon leurs valeurs.
SortedMap
Comme l'interface SortedSet qui hérite de son interface supérieur Set, l'interface SortedMap hérite aussi de Map
et implémente les méthodes pour ordonner les éléments dans l'ordre croissant et décroissant.
Iterator et ListIterator
Ces deux interfaces sont membres du java framework Collections. Iterator est utilisé pour parcourir toutes les
collections d'objets dans le sens ascendant, mais surtout pour parcourir les classes qui héritent de l'interface
Map et qui ne permettent pas la boucle for. ListIterator permet le parcours dans les deux sens ascendant et
descendant.
Différence entre Collection et Collections
- Collection est l'interface racine dans l'hiérarchie de java framework
Collections. Ce qui veut dire que chaque classe implémente Collection.
- Collections est une classe
utilitaire membre de java framework Collections et qui a des méthodes statiques pour manipuler les objets qui
implémentent l'interface Collection.
Par exemple, le tri d'un ArrayList dans l'ordre croissant:
Collections.sort(arraylist);