Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

ตัววนซ้ำใน C #


Iterator ทำการวนซ้ำแบบกำหนดเองบนคอลเลกชัน ใช้คำสั่งผลตอบแทนผลตอบแทนและส่งคืนแต่ละองค์ประกอบทีละรายการ ตัววนซ้ำจะจำตำแหน่งปัจจุบันและในการวนซ้ำครั้งถัดไป องค์ประกอบถัดไปจะถูกส่งคืน

ต่อไปนี้เป็นตัวอย่าง −

ตัวอย่าง

using System;
using System.Collections.Generic;
using System.Linq;

namespace Demo {
   class Program {
      public static IEnumerable<string> display() {
         int[] arr = new int[] {99,45,76};

         foreach (var val in arr) {
            yield return val.ToString();
         }
      }

      public static void Main(string[] args) {
         IEnumerable<string> ele = display();
         foreach (var element in ele) {
            Console.WriteLine(element);
         }
      }
   }
}

ผลลัพธ์

99
45
76

ด้านบน เรามีวิธีการ iterator display() ที่ใช้คำสั่ง Yield เพื่อส่งคืนองค์ประกอบครั้งละหนึ่งรายการ -

public static IEnumerable<string> display() {
   int[] arr = new int[] {99,45,76};

   foreach (var val in arr) {
      yield return val.ToString();
   }
}

ผลลัพธ์จะถูกเก็บไว้และแต่ละองค์ประกอบจะถูกทำซ้ำและพิมพ์ -

IEnumerable<string> ele = display();
foreach (var element in ele) {
   Console.WriteLine(element);
}