首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

C# 面試題:yield return 輸出 0~100 完全平方數

     編輯:程式設計綜合問答

代碼


IEnumerable<int> SquareNumbers() {
    for (int i = 0; i * i <= 100; ++i)
        yield return i * i;
}

// 用法
foreach (var n in SquareNumbers())
    Console.WriteLine(n); // 0 1 4 9 16 25 36 49 64 81 100

解析

  • `yield return` 使方法成為**迭代器**,編譯器生成狀態機,按需產生值。
  • 循環條件 `i * i <= 100` 精確控制上限。
  • 調用方 `foreach` 每次迭代觸發方法執行到下一個 `yield return`。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved