1-Mavzu 1-Mavzu Reja: Klass a’zolariga ruxsatni boshqarish


Download 116.94 Kb.
bet99/100
Sana02.01.2022
Hajmi116.94 Kb.
#200801
1   ...   92   93   94   95   96   97   98   99   100
Bog'liq
dasturiy injinering

2. Iteratorning uzilishi.


Iteratorning erta uzilishi uchun yield operatorining quyidagi shakli xizmat qiladi.

yield break;

Ushbu operator amalga oshirilganda, iterator to'plamning oxiriga yetganligini bildiradi. Aslida, iteratorning o'zi to'xtaydi.

Quyidagi dastur ingliz alifbosining dastlabki o'nta harfini ko'rsatish uchun o'zgartirilgan avvalgi dasturning versiyasidir.

// Iteratorning uzilishi misoli.

using System;

using System.Collections;

class MyClass {

char ch = 'A';

// Ushbu iterator ingliz alifbosining birinchi 10 harflarini qaytaradi.

public IEnumerator GetEnumerator() {

for(int i=0; i < 26; i++) {

if(i == 10) yield break; // iteratorni muddatidan oldin to'xtatish

yield return (char) (ch + i) ;

}

}

}

class ItrDemo3 {

static void Main() {

MyClass mc = new MyClassO;

foreach(char ch in mc)

Console.Write(ch + " ");

Console.WriteLine();

}

}

Ushbu dastur quyidagi natijani beradi.

A B C D E F G H I J

Download 116.94 Kb.

Do'stlaringiz bilan baham:
1   ...   92   93   94   95   96   97   98   99   100




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling