public static void Main() { foreach (int n in YieldNaturalNumber.Next()) // IEnumerable<int>를 반환하고 n으로 start값을 받아와서 { Console.WriteLine(n); // 출력한다. } }
static void Main(string[] args) { foreach (int n in YieldNaturalNumber.Next(100000)) { Console.WriteLine(n); } }
// 2. yield return / break // yield return 과 yield break 를 이용하면 기존의 IEnumerable, IEnumerator 인터페이스로 구현했던 열거기능을 더 쉽게 구현할 수 있음. private void YieldEx() { NaturelNumber number = new NaturelNumber(); foreach (int n in number) { if (n > 1000) { break; } Debug.Log(n); } foreach (int n in YieldNaturalNumber.Next()) { if (n > 1000) { break; } Debug.Log(n); } }