Les collections permettent de stocker un nombre variable d'éléments de types identiques ou disparates. Le langage Java dispose de plusieurs classes destinées à créer ce genre d'artifice.

Les collections se démarquent des tableaux dans la mesure ou elles ont la capacité de s'étendre et de diminuer au gré, respectivement, des ajouts et des suppressions d'éléments. Cela permet d'éviter de consommer des ressources mémoires inutilement en initialisant un tableau à une taille prédéfinie en sachant que celui-ci risque de ne pas être totalement rempli lors des différentes étapes d'exécution d'un programme. Dans ce cas, une collection possèdera la faculté d'adapter sa taille à tous changements.

Les classes de gestion de collections se situent dans le paquetage java.util. Il en existe trois sortes :

  • Les listes sont des structures capables de contenir des objets de différents types accessibles séquentiellement.
  • Les maps sont des tableaux associatifs qui permettent de lier un objet clé à un autre objet valeur.
  • Les ensembles sont des structures contenant des éléments non dupliqués dont l'accès reste très performant.
Type Classe Description
Les listes Vector représente un tableau dynamique dont la taille peut varier.
Stack représente un mécanisme de pile de type LIFO.
ArrayList représente un tableau dynamique dont la taille peut varier.
LinkedList représente une liste liée utilisable comme une pile LIFO ou une file FIFO.
Les Maps Hashtable représente un tableau associatif dont les clés ne peuvent être nulles.
HashMap représente un tableau associatif dont une clé et des valeurs peuvent être nulles.
WeakHashMap représente un tableau associatif où si une clé n'est plus référencée, la paire clé-valeur est ignorée.
TreeMap représente un tableau associatif dont les clés sont classées en ordre croissant.
Ensembles HashSet représente un ensemble renforcée par un map.
TreeSet représente un ensemble renforcée par un TreeMap et classant les objets en ordre croissant.
Sommaire