Sobes.tech
Junior — Middle

Ի՞նչ մեթոդներ են իրականացնում IEnumerable ինտերֆեյսը ծրագրավորման լեզվում։

sobes.tech AI

Պատասխան AI-ից

C# լեզվում, IEnumerable ինտերֆեյսը իրականացվում է այն դասարանների և կառուցվածքների կողմից, որոնք ապահովում են GetEnumerator() մեթոդը, որը վերադարձնում է IEnumerator ինտերֆեյսը իրականացնող օբյեկտ։ Սա թույլ է տալիս անցնել հավաքածուով foreach ցիկլի միջոցով։

IEnumerable իրականացնելու հիմնական եղանակները՝

  1. Անհատական իրականացում:
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];
    }
}
  1. Համընդհանուր 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();
}
  1. Օգտագործել ստանդարտ գրադարանի հավաքածուներ, որոնք արդեն իրականացնում են IEnumerable (օրինակ, List<T>, Array

Հիմնական կետը՝ ապահովել GetEnumerator() մեթոդը, որը վերադարձնում է հավաքածուի տարրերով անցնելու համար enumerator։