Junior — Middle
Quelles méthodes implémentent l'interface IEnumerable dans le langage de programmation?
sobes.tech IA
Réponse de l'IA
Dans le langage C#, l’interface IEnumerable est implémentée par des classes et des structures qui fournissent la méthode GetEnumerator(), renvoyant un objet qui implémente l’interface IEnumerator. Cela permet d’itérer sur la collection avec une boucle foreach.
Les principales façons d’implémenter IEnumerable :
- Implémentation manuelle :
public class MyCollection : IEnumerable
{
private object[] items = {1, 2, 3};
public IEnumerator GetEnumerator()
{
for (int i = 0; i < items.Length; i++)
yield return items[i];
}
}
- Implémentation de l’interface générique
IEnumerable<T>:
public class MyCollection<T> : IEnumerable<T>
{
private T[] items;
public MyCollection(T[] items) { this.items = items; }
public IEnumerator<T> GetEnumerator()
{
for (int i = 0; i < items.Length; i++)
yield return items[i];
}
IEnumerator IEnumerable.GetEnumerator() => GetEnumerator();
}
- Utilisation des collections de la bibliothèque standard qui implémentent déjà
IEnumerable(par exemple,List<T>,Array).
Ainsi, le point clé est de fournir la méthode GetEnumerator(), qui retourne un énumérateur pour parcourir les éléments de la collection.