Sobes.tech
Junior — Middle

C#-ში foreach ოპერატორის შიდა სტრუქტურა რომელ ელემენტებს შეიცავს?

sobes.tech AI

პასუხი AI-სგან

C# dilində foreach operatorunun daxili quruluşu IEnumerable interfeysindən və onun GetEnumerator() metodundan istifadə etməyə əsaslanır. Əsas elementlər:

  • IEnumerable-i həyata keçirən toplusu — təkrarlama aparılan obyekt.
  • Enumerator (sayıcı), IEnumerator-i həyata keçirən — toplusu üzərində iterasiyanı idarə edən obyekt.
  • MoveNext() metodu — göstəricini növbəti elementə keçirir.
  • Current xüsusiyyəti — cari elementi qaytarır.

Nə baş verdiyini nümunə ilə göstərəcəyik:

IEnumerable collection = ...;
IEnumerator enumerator = collection.GetEnumerator();

while (enumerator.MoveNext())
{
    var item = enumerator.Current;
    // foreach döngəsinin gövdəsi
}

Beləliklə, foreach enumeratorlərlə işləməni sadələşdirir, GetEnumerator(), MoveNext()Current-a çıxışı gizlədir.