สารบัญ:
คำจำกัดความ - Iterator หมายถึงอะไร?
ตัววนซ้ำในบริบทของ C # เป็นบล็อกของรหัสที่ส่งคืนลำดับของค่าของคอลเลกชันหรืออาร์เรย์ มันเป็นฟังก์ชั่นสมาชิกที่ใช้งานโดยใช้บล็อกตัววนซ้ำซึ่งมีคำสั่งอย่างน้อยหนึ่งคำที่มีคำว่า "ผลตอบแทน"
ตัววนซ้ำถูกใช้เพื่อเปิดใช้งานผู้บริโภคคลาสคอนเทนเนอร์ซึ่งมีคอลเลกชันหรืออาร์เรย์เพื่อสำรวจคอลเลกชันโดยใช้คำสั่ง "foreach" ในวิธีที่ง่าย มันถูกใช้กับคลาสคอลเลกชันที่พิมพ์อย่างมากเพื่อย้ำโครงสร้างข้อมูลที่ซับซ้อนเช่นต้นไม้ไบนารีซึ่งต้องการการสำรวจเส้นทางแบบวนซ้ำและรักษาสถานะการทำซ้ำผ่านการเรียกซ้ำ แนวคิดของ iterator ยังใช้ในการใช้งานการประมวลผลที่เลื่อนออกไปในการสืบค้น LINQ
Techopedia อธิบาย Iterator
iterator ขึ้นอยู่กับรูปแบบการออกแบบที่ให้วิธีการสำรวจองค์ประกอบของคอลเลกชันของรายการตามลำดับโดยไม่ต้องเปิดเผยโครงสร้างพื้นฐานของคอลเลกชัน มันกำจัดงานที่น่าเบื่อของการใช้อินเทอร์เฟซ "IEnumerator" ด้วยตนเองเมื่อสร้างคลาสคอลเลกชันที่สนับสนุนคำสั่ง "foreach" รหัสภาษาระดับกลางที่จำเป็นสำหรับการใช้วิธีการและคุณสมบัติของอินเทอร์เฟซ IEnumerator ถูกสร้างขึ้นโดยคอมไพเลอร์ซึ่งส่งผลให้ไวยากรณ์ง่ายขึ้นลดขนาดรหัสและปรับปรุงประสิทธิภาพการทำงานของนักพัฒนา
โดยทั่วไปตัววนซ้ำนั้นคล้ายกับเคอร์เซอร์ฐานข้อมูลที่ให้การเข้าถึงองค์ประกอบข้อมูลในคอลเลกชัน แต่ไม่ได้ทำซ้ำ iterator สามารถนำไปใช้ใน C # เป็นวิธีการดำเนินการหรือรับ accessor ตัวอย่างเช่นตัววนซ้ำสามารถใช้เพื่อสำรวจชุดของสตริงเพื่อแสดงเนื้อหาของแต่ละสตริงในคอลเลกชัน
ตัววนซ้ำแสดงโดยอินเตอร์เฟส IEnumerator และถูกใช้โดยคอมไพเลอร์ด้วยวิธีการต่อไปนี้:
- MoveNext: วิธีการที่เลื่อนไปยังองค์ประกอบถัดไปของคอลเลกชันและระบุจุดสิ้นสุดของคอลเลกชันนั้น
- ปัจจุบัน: คุณสมบัติที่ดึงค่าขององค์ประกอบที่ชี้ไปในปัจจุบัน
- กำจัด: ทำความสะอาดซ้ำ








