Les tableaux
int[] volumes = {1500, 2000, 1800}; System.out.println(volumes.length); // 3 System.out.println(volumes[0]); // 1500 (indice 0)
Taille fixe — un tableau a une taille définie à la création. Pour une liste qui grandit, on utilise
ArrayList.List (ArrayList)
import java.util.*; List<Commande> commandes = new ArrayList<>(); commandes.add(new Commande(1500)); commandes.add(new Commande(2000)); System.out.println(commandes.size()); // 2 for (Commande c : commandes) { ... }
Génériques —
List<Commande> fixe le type des éléments (chapitre 14) : sécurité de type à la compilation.Map et Set
// Map : associe une clé à une valeur Map<String, Integer> volumeParCommune = new HashMap<>(); volumeParCommune.put("Ladignac", 3500); volumeParCommune.get("Ladignac"); // 3500 // Set : ensemble sans doublon Set<String> communes = new HashSet<>(); communes.add("Nexon");
| Collection | Usage |
|---|---|
| List | séquence ordonnée, doublons permis |
| Set | ensemble sans doublon |
| Map | paires clé → valeur |
🛢️ Sur le projet Fioul Groupé
Une Campagne contient une List<Commande> ; le volume par commune se calcule dans une Map<String,Integer>. Ces structures reproduisent en mémoire ce que MySQL fait avec GROUP BY et ce que MongoDB fait avec $group — trois vues d'une même agrégation.
À retenir
- Tableau : taille fixe, accès par indice, .length.
- List (ArrayList) : séquence dynamique, .add/.size/.get.
- Map (clé→valeur) et Set (sans doublon) complètent la List.
- Les génériques
fixent le type des éléments.