yield是对一种复杂行为的简化,就是将一段代码简化为一种简单的形式。

先看一下常规的写法,下面例子中,把找出字符串阵列中,某些元素包含有某些字符的元素。

 class Bi{public string[] str { get; set; }public IEnumerable<string> GetIncludeCharacterOfArray(string includeCharacter){List<string> lst = new List<string>();for (int i = 0; i < str.Length; i++){if (str[i].Contains(includeCharacter)){lst.Add(str[i]);}}return lst;}}

Source Code

运行结果:

下面,我们使用yield来简化一下上面的方法:

 public IEnumerable<string> GetIncludeCharacterOfArrayWithYield(string includeCharacter){for (int i = 0; i < str.Length; i++){if (str[i].Contains(includeCharacter))yieldreturn str[i];}}

Source Code

再次运行:

转载于:https://www.cnblogs.com/insus/p/8125351.html

使用yield返回IEnumberT集合相关推荐

  1. 【mybatis】mybatis中 返回map集合

    关于mybatis返回map集合的操作: 1.mapper.xml中写一个查询返回map的sql <select id="findMap" parameterType=&qu ...

  2. Python中yield返回生成器的详细方法

    最简单.直观的认识,将 yield 看做 return 对待,只是 return 返回一个值,而 yield 返回一个生成器. 要理解 yield 的作用,必须理解生成器是什么? 在理解生成器之前,必 ...

  3. 幂集 返回某集合的所有子集

    幂集.编写一种方法,返回某集合的所有子集.集合中不包含重复的元素. 说明:解集不能包含重复的子集. 示例: 输入: nums = [1,2,3]输出: [[3],[1],[2],[1,2,3],[1, ...

  4. java查询多条_Mybatis查询多条记录并返回List集合的方法

    实体对象如下: /** 使用lobmok插件 */ @Getter @Setter @NoArgsConstructor @ToString @EqualsAndHashCode public cla ...

  5. java mybatis 返回map_mybatis返回map集合的格式是什么?mybatis返回map集合实例

    Mybatis因为会与数据库交互,所以经常会有返回map集合的场景,那一般mybatis返回map集合的格式是什么呢?下面小编就用一些实例与你分享分享吧. 例1:返回key不定:返回key为学员id, ...

  6. java返回空集合对象_返回null或空集合更好吗?

    这是一个普遍的问题(但是我正在使用C#),最好的方法是什么(最佳实践),对于以集合为返回类型的方法,您是否返回null或空集合? #1楼 我想在这里举例说明. 在这里考虑一个案例. int total ...

  7. java oracle查询结果list取数,Oracle函数返回Table集合

    Oracle table()函数查询函数返回的结果集 2015年12月13日 22:42:51 warrenjiang 阅读数:7452 版权声明:本文为博主原创文章,未经博主允许不得转载. http ...

  8. php yield 返回值,[PHP] yield沟通函数循环内外

    1.yield是函数内外,循环内外沟通用的 , 当你的函数需要返回一个大数组 , 循环的时候需要遍历这个大数组时 , 并且需要多次遍历这个函数的返回值 , 这个是有用的 2.当我也是只需要在一次循环中 ...

  9. plsql 循环存储过程返回数据集合_Java基础(十五)——Collection集合、泛型 - 寒江雨

    Collection集合 集合概述 集合:集合是Java中提供的一种容器,可以用来存储多个数据 数组的长度是固定的,集合的长度是可变的 数组中存储的是同一种数据类型的元素,可以存储基本数据类型也可以存 ...

最新文章

  1. SharePoint 2010 在多台前端环境 还原 网站集 问题解析
  2. mac你没有权限打开应用程序_苹果mac卡顿怎么解决呢?轻松几招让你Mac流畅如新
  3. 安装sqlserver时“试图执行未经授权的操作“的错误
  4. 2019 java值得学吗_Java认证值得吗?
  5. Java连接postgresql数据库
  6. 甲骨文全面进军云计算市场
  7. [BZOJ 2957]楼房重建(THU2013集训)(线段树维护单调栈)
  8. MySQL正则表达式的问题
  9. 基于GD32F450+USB3300的高速USB传输
  10. 阿里云对象存储OSS是怎么收费的?
  11. 苹果动图分享给android,苹果实况图片怎么发给别人
  12. python爬虫scrapy爬取新闻标题及链接_python爬虫框架scrapy爬取梅花网资讯信息
  13. php 日期format不要零_DateFormat PHP Class (php 处置日期)
  14. 呼叫系统的技术实现原理和运作流程
  15. 阔密保密专家:数字货币将要来临 你的手机安全吗?
  16. 微信里如何让封面图片全部显示--转自北京童颜吾记工作室
  17. 广告刷屏世界杯,联想Filez助力海信全球营销运营
  18. fcitx重启 linux_【Linux基础】Fcitx中文输入法安装
  19. 与贸易有关的知识产权协议 (转)
  20. fixture 'xxx' not found

热门文章

  1. 三菱880彩铅和uni的区别_【彩铅基础】水溶性彩铅是什么?
  2. 卷积神经网络(CNN)结尾篇:可视化跟踪(Visualize)
  3. 卷积神经网络(CNN)之卷积层的实现
  4. 20165211 我期望的师生关系
  5. 【scala初学】scala 语法 声明
  6. Kubernetes之Pod调度
  7. ASP.NET性能优化之分布式Session
  8. LINUX 下通过lsof恢复被误删除的文件
  9. linux mkfifo管道
  10. python中for循环和while循环else语句的执行过程和陷阱