Junior
Čo je to IEnumerable v C#?
sobes.tech AI
Odpoveď od AI
IEnumerable v C# je rozhranie definované v názvovom priestore System.Collections. Poskytuje všeobecný spôsob prechádzania (iterácie) prvkov kolekcie.
Kľúčové vlastnosti IEnumerable:
- Prístup pomocou iterátora: Definuje metódu
GetEnumerator(), ktorá vracia objekt implementujúci rozhranieIEnumerator.IEnumeratorumožňuje sekvenčne prechádzať z jedného prvku kolekcie na druhý. - Len na čítanie:
IEnumerableumožňuje iba prechádzanie prvkov. Neposkytuje metódy na pridanie, odstránenie alebo zmenu prvkov kolekcie. - Línie načítanie: Použitie
IEnumerablečasto vedie k línemu načítaniu. Prvky sú generované alebo načítané iba podľa potreby počas iterácie. - Základ LINQ:
IEnumerableje základným rozhraním pre mnoho operácií LINQ. Rozšírené metódy LINQ (akoWhere,Select,OrderBy) pracujú s kolekciami, ktoré implementujúIEnumerable, čo umožňuje vytváranie reťazcov operácií.
Príklad použitia:
// Vytvoríme zoznam reťazcov
List<string> ovocie = new List<string> { "jablko", "banán", "čerešňa" };
// Prechádzame prvky zoznamu pomocou foreach, ktorý funguje s IEnumerable
foreach (string ovocie in ovocie)
{
// Vypíšeme každý ovocie
Console.WriteLine(ovocie);
}
Súvisiace rozhrania:
| Rozhranie | Popis |
|---|---|
IEnumerable |
Poskytuje prechádzanie prvkov kolekcie |
IEnumerable<T> |
Generická verzia IEnumerable pre typizované kolekcie |
ICollection |
Rozširuje IEnumerable, pridáva metódy pre veľkosť, pridanie/odstránenie prvkov (nie univerzálne) |
ICollection<T> |
Generická verzia ICollection |
IList<T> |
Rozširuje ICollection<T>, pridáva prístup k prvkom podľa indexu |