IEnumerator da yine C# içinde yer alan bir Interface'tir. IEnumerable interface'inin tek metodu olan GetEnumerator() kullanıldığında IEnumerator interface'ini döndürür.
IEnumerator interface'inin iki metodu (MoveNext ve Reset) ve bir de özelliği (Current) vardır.
Bir sınıfa IEnumerable interface'i implement etmek demek, o sınıfın IEnumerator nesnesi döndüreceği anlamına gelir.
Örnek:
public class Araba : IEnumerable
{
IEnumerator IEnumerable.GetEnumerator()
{
// arabaEnumerator döndürür
}
}
Örnek 2: foreach döngüsü ile IEnumerator nesnesi aşağıdaki örneklerde birbirlerine denk sonuçlar döndürürler
foreach (Araba araba in OtoGaleri)
{
...
}
IEnumerator arabalar = OtoGaleri.GetEnumerator();
while (arabalar.MoveNext())
{
araba = (Araba)arabalar.Current
...
}
Önceki bazı diğer benzer içerikli yazılarım için;
bkz: C# IEnumerable Nedir?
bkz: C# Queue Nedir? Kullanımı ve Örnekleri
bkz: C# Stack Nedir? Kullanımı ve Örnekleri
bkz: C# ve Generic ile Non-Generic Koleksiyonlar Nelerdir?
bkz: C# Programlama Dilinde Koleksiyon Nedir?
bkz: Interface Nedir?