Sobes.tech
Junior

Mis on IEnumerable C#-s?

sobes.tech AI

Vastus AI-lt

C# keeles IEnumerable on liides, mis on määratletud System.Collections ruumis. See pakub üldist viisi kolleksiooni elementide läbimiseks (iteraatsioon):

IEnumerable peamised omadused:

  • Juurdepääs iteratori kaudu: Määratleb meetodi GetEnumerator(), mis tagastab IEnumerator liidest realiseeriva objekti. IEnumerator võimaldab järjestikust liikumist ühelt kolleksiooni elemendilt teisele.
  • Ainult lugemiseks: IEnumerable võimaldab ainult elementide läbimist. See ei paku meetodeid elementide lisamiseks, eemaldamiseks või muutmiseks.
  • Hiline laadimine: IEnumerable kasutamine viib sageli aeglase laadimiseni. Elemendid genereeritakse või laaditakse ainult siis, kui seda on vaja läbimise ajal.
  • LINQ alus: IEnumerable on aluseks paljudele LINQ operatsioonidele. LINQ laiendusmeetodid (Where, Select, OrderBy) töötavad IEnumerable-i realiseerivate kogumitega, võimaldades luua tegevuste ahelat.

Näide kasutamisest:

// Loome tekstide nimekirja
List<string> puuviljad = new List<string> { "õun", "banaan", "kirss" };

// Läbime nimekirja elemente foreach abil, mis töötab `IEnumerable`-iga
foreach (string puuvili in puuviljad)
{
    // Väljasta iga puuvilja nimi
    Console.WriteLine(puuvili);
}

Seotud liidesed:

Liides Kirjeldus
IEnumerable Võimaldab läbida kollektsiooni elemente
IEnumerable<T> IEnumerable genrikversioon, mõeldud rangelt tüübipõhistele kollektsioonidele
ICollection Laiendab IEnumerable, lisab suuruse, lisamise/eemaldamise meetodid (mitte universaalsed)
ICollection<T> ICollection genrikversioon
IList<T> Laiendab ICollection<T>, võimaldab elementidele ligi indeksiga