Leçon 36 : Introduction au Java Collections Framework
Le Java Collections Framework (JCF) est une architecture unifiée pour représenter et manipuler des collections (groupes) d'objets. Il offre un ensemble d'interfaces et de classes pour gérer les structures de données efficacement.
1. Pourquoi utiliser les Collections ?
Bien que les tableaux soient rapides, ils ont une taille fixe. Les collections sont dynamiques (se redimensionnent automatiquement) et fournissent des structures de données et des algorithmes sophistiqués (tri, recherche).
2. Interfaces de base du JCF
Toutes les classes de collection implémentent l'une de ces interfaces racines :
A. Interface Collection (La Racine)
C'est l'interface de base pour la plupart des types de collection. Elle définit des méthodes de base comme add(), remove(), size() et contains().
B. Interface List
- Collection ordonnée (les éléments conservent leur ordre d'insertion).
- Autorise les éléments en double.
- Accès indexé (comme les tableaux).
- Implémentations :
ArrayList,LinkedList,Vector.
C. Interface Set
- Collection non ordonnée.
- N'autorise pas les éléments en double.
- Implémentations :
HashSet,TreeSet,LinkedHashSet.
D. Interface Map
- N'étend pas l'interface
Collection(elle est légèrement séparée). - Stocke les données sous forme de paires clé-valeur.
- Les clés doivent être uniques ; les valeurs peuvent être dupliquées.
- Implémentations :
HashMap,TreeMap,LinkedHashMap.
3. Exigence des Generics
Notez que les types de collection nécessitent des Generics (ex: <String>, <Integer>) pour garantir la sécurité du type. Nous aborderons les Generics en détail bientôt, mais pour l'instant, comprenez que nous indiquons à la collection quel type d'objet elle va stocker.