C yield關鍵字 操作集合

2021-07-16 01:38:17 字數 541 閱讀 2399

c#中yield的關鍵字幾乎沒有見過,今天用了一下,感覺很不錯。

他是乙個語法糖,直接將集合中滿足條件的資料返回給呼叫者,提高效能。

直接上例子:

static void main(string args)

;foreach (var item in strtoint(strs))

}console.readkey();

}static liststrtointgeneral(string str)

return list;

}static ienumerablestrtoint(string str)

//yield return就是將return的結果加到返回的集合中

//yield 關鍵字,將當前**凍結,將控制器交給呼叫者,一旦滿足條件立即返回結果.

}

兩種寫法比較,可以觀察出執行順序和**的書寫。

如果資料量很大,那麼效能就非常的明顯了,找到資料交給被呼叫者直接返回結果,不迴圈所有的資料再返回.

動手除錯一下看看呢.

C yield 關鍵字 使用

在語句中使用 yield 關鍵字,則指示在的方案 運算子或 get 訪問器是迭代器。使用的迭代器對集合的自定義迭代。使用乙個 yield return 語句返回每個元素乙個節點。例子 public class powersof2 i public static system.collections....

解析c yield關鍵字

1.yield實現的功能 yield return 先看下面的 通過yield return實現了類似用foreach遍歷陣列的功能,說明yield return也是用來實現迭代器的功能的。using static system.console using system.collections.ge...

c yield關鍵字原理詳解

1.yield實現的功能 yield return 先看下面的 通過yield return實現了類似用foreach遍歷陣列的功能,說明yield return也是用來實現迭代器的功能的。using static system.console using system.collections.ge...