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


yield return (char) (ch + i)



Yüklə 233,68 Kb.
səhifə96/96
tarix27.07.2023
ölçüsü233,68 Kb.
#137688
1   ...   88   89   90   91   92   93   94   95   96
1-Mavzu 1-Mavzu Reja Klass a’zolariga ruxsatni boshqarish-fayllar.org

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

3. Bir nechta yield operatorlarini qo'llash.



Iteratorda bir nechta yield operatorlaridan foydalanishga ruxsat beriladi. Ammo har bir bunday operator to'plamning keyingi elementni qaytarishi kerak. Misol sifatida, quyidagi dasturni ko'rib chiqaylik.
// Bir nechta yield operatorlarini qo'llash misoli.
using System;
using System.Collections;
class MyClass {
// Ushbu iterator A, B, C, D va E harflarini qaytaradi.
public IEnumerator GetEnumerator() {
yield return 'A';
yield return 'В';
yield return 'C' ;
yield return 'D';
yield return 'Е';
}
}
class ItrDemo5 {
static void Main() {
MyClass mc = new MyClass ();
foreach(char ch in mc)
Console.Write(ch + " ");
Console.WriteLine();
}
}
Quyida ushbu dasturni amalga oshirish natijalari keltirilgan.
А В С D Е
Ushbu dasturdaGetEnumerator() metodda yield ning besh operatorlari amalga oshiriladi. Shuni alohida ta'kidlash kerakki, ular o'z navbatida amalga oshiriladi va har safar to'plamdan keyingi elementni olinadi. Shunday qilibforeach siklining har bir bosqichida Main() metodi faqat bitta belgi qaytadi.
Nazorat savollari


  1. Kolleksiya va iteratorlarga misollar keltiring.


http://fayllar.org
Yüklə 233,68 Kb.

Dostları ilə paylaş:
1   ...   88   89   90   91   92   93   94   95   96




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©www.azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin