C# yeild的两种形式的yield语句:

yield return <expression>;
yield break;

  使用 yield return 语句每一次返回每个元素。
  将使用 foreach 语句从客户端代码中调用迭代器。 foreach 循环的每次迭代都会调用迭代器方法。 迭代器方法运行到 yield return 语句时,会返回一个expression表达式并保留当前在代码中的位置。 当下次调用迭代器函数时执行从该位置重新启动。
  可以用 yield break语句来终止迭代。

  示例:

using System;
using System.Collections.Generic;
using System.Text; class Program
{
static void Main(string[] args)
{
foreach (int i in Power(, ))
{
Console.WriteLine(i);
}
} public static IEnumerable<int> Power(int number, int exponent)
{
int result = ;
for (int i = ; i < exponent; i++)
{
result *= number;
yield return result;
}
}
}

  运行输出:


请按任意键继续. . .

最新文章

  1. 黑马程序员——【Java高新技术】——案例:银行业务调度系统
  2. Gartner:用自适应安全架构来应对高级定向攻击
  3. Greedy:Physics Experiment(弹性碰撞模型)(POJ 3848)
  4. EasyUI中Base(基础)的基本用法
  5. ubuntu修改源列表sourcelist的方法
  6. 在大数据中,关于native包的编译步骤
  7. python练习——最长的递减子序列
  8. 一群猴子排成一圈,按1,2,...n 编号,数到m只,踢出局,直到剩下最后一个猴子是大王
  9. django的路由系统
  10. 淘宝ued - 前端智勇大闯关(第三季)答案(更新)
  11. R系列:分词、去停用词、画词云(词云形状可自定义)
  12. STL源码剖析(读书笔记)
  13. python3下搜狗AI API实现
  14. c# jobject 的数据结构的解析:
  15. [Swift]LeetCode328. 奇偶链表 | Odd Even Linked List
  16. 百万级开源MQTT消息服务器 搭建
  17. CodeBlock 快捷键大全
  18. [sh]shift参数左移用法
  19. 鼠标右键添加&quot;在此处打开命令窗口&quot;
  20. BERT总结:最先进的NLP预训练技术

热门文章

  1. HTML与CSS基础知识补遗(一)
  2. EasyUI需注意的问题01
  3. IOS竖屏应用单个页面横屏的解决办法
  4. &quot;巴卡斯杯&quot; 中国大学生程序设计竞赛 - 女生专场
  5. CentOS 7 安装 vmware-tools
  6. Kinect v2.0 for windows开发环境说明
  7. 润乾报表之制作List列表
  8. 4..一起来学hibernate之Session详解
  9. Kylin查询性能低下原因分析
  10. Oracle expdp/impdp导出导入命令及数据库备份