C# 中的 yield 關鍵字

Muhammad Maisam Abbas 2024年2月16日
C# 中的 yield 關鍵字

本教程將討論 C# 中 yield 關鍵字的用法。

C# 中的 yield 關鍵字

yield 關鍵字是 C# 中的上下文關鍵字。它與 return 關鍵字一起使用,以指定所使用的方法是迭代器。yield 關鍵字的最佳用法是當我們遍歷列表時。使用 yield 關鍵字,我們可以遍歷一個列表,並將列表中的元素返回給呼叫函式,然後返回到迴圈並從下一個索引開始。yield 關鍵字返回 IEnumerator 類的物件。因此,使用 yield 關鍵字的函式的返回型別需要為 IEnumerator。以下程式碼示例向我們展示瞭如何在 C# 中使用 yield 關鍵字。

using System;
using System.Collections.Generic;

namespace yield_keyword {
  class Program {
    static IEnumerable<string> Strings() {
      List<string> Values = new List<string> { "value1", "value2", "value3", "value4" };
      foreach (var val in Values) {
        yield return val;
      }
    }
    static void Main(string[] args) {
      foreach (var i in Strings()) {
        Console.WriteLine(i);
      }
    }
  }
}

輸出:

value1
value2
value3
value4

我們建立了一個函式 Strings(),該函式使用 C# 中的 yield 關鍵字返回字串列表的元素。yield 關鍵字從 Values 列表中獲取一個值,將其返回到呼叫函式,然後如果再次呼叫 Strings() 函式,則從下一次迭代繼續迴圈。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

相關文章 - Csharp Keyword