首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C# foreach 語句:集合迭代器模式、唯讀迴圈變數、陣列遍歷順序與自訂集合介面

     編輯:關於C語言

foreach 語句 針對實作迭代器模式的集合逐一枚舉元素,迴圈變數為唯讀區域變數。

語法


foreach (type identifier in expression) embedded-stmt

集合型別定義(鴨子型別)

型別 C 為集合型別,若:

  1. 有 public GetEnumerator() 回傳 E(結構/類別/介面)。
  2. E 有 public bool MoveNext()。
  3. E 有 public Current { get; } 屬性。

Current 的型別即為元素型別。

關鍵規則

  • 迴圈變數唯讀:不可指派、不可 ref/out 傳遞(編譯錯誤)。
  • 元素型別與迴圈變數型別不符 → 需顯式轉換。
  • 陣列支援 foreach:一維遞增索引;多維從最右維度遞增。

範例:質數集合遍歷


// 假設 Prime 為實作 IEnumerable 的集合
// MyInt 為 200~300 範圍包裝型別
foreach (MyInt x in Prime)
    Console.WriteLine(x); // 輸出 200~300 間質數

break / continue

行為同 for/while。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved