Junior — Middle
Quelle est la différence entre les différents types d'interfaces de collection?
sobes.tech IA
Réponse de l'IA
En C#, les interfaces de collection définissent différents contrats pour travailler avec des ensembles de données, et leur différence réside dans la fonctionnalité et l'objectif:
- IEnumerable<T> — interface de base pour parcourir une collection avec foreach. Permet uniquement de lire les éléments un par un.
- ICollection<T> — étend IEnumerable<T>, ajoute des méthodes pour modifier la collection (Add, Remove), des propriétés Count et IsReadOnly.
- IList<T> — étend ICollection<T>, ajoute un indexeur pour accéder par index, des méthodes d'insertion et de suppression par index.
- IDictionary<TKey, TValue> — représente une collection de paires clé-valeur, où l'accès aux éléments se fait par clé.
Ainsi, le choix de l'interface dépend des opérations requises : si seule l'itération est nécessaire — IEnumerable<T>, si la modification et le comptage sont nécessaires — ICollection<T>, si l'accès par index est requis — IList<T>, si le travail avec des clés — IDictionary<TKey, TValue>.