菜的像徐坤
排名
7
文章
192
粉丝
15
评论
16
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

C# yield 关键字

4758人阅读 2022/2/18 16:43 总访问:1021060 评论:0 收藏:0 手机
分类: Csharp

话不多说,先看看代码

  1. public static IEnumerable<int> enumerableFuc()
  2. {
  3. yield return 1;
  4. yield return 2;
  5. yield return 3;
  6. }
  7. foreach (var item in enumerableFuc())
  8. {
  9. Console.WriteLine(item);
  10. }

输出结果


通过yield return实现了类似用foreach遍历数组的功能,说明yield return也是用来实现迭代器的功能

现在我们把enumerableFuc方法换一下

  1. public static IEnumerable<int> enumerableFuc()
  2. {
  3. yield return 1;
  4. yield return 2;
  5. yield break;
  6. yield return 3;
  7. }
  8. foreach (var item in enumerableFuc())
  9. {
  10. Console.WriteLine(item);
  11. }

现在在输出结果

能看到只输出了1,2
说明这个迭代器被yield break停掉了,所以yield break是用来终止迭代的。

注意

只能使用在返回类型必须为 IEnumerable、IEnumerable、IEnumerator 或 IEnumerator的方法、运算符、get访问器中。

评价

C out、ref关键字的用法和区别

说说自己对out、ref的认识,面试问到的几率很高哟。out:classProgram { /* *out、ref都是引用传递,传递后使用都会改变...

c 让搜索结果页关键字变红

要让关键字变红其实很简单,把搜索结果的关键字替换一下就好了。result.Title=result.Title.Replace(q,&quot;&lt;fontcolor...

python关键字和内置函数

Python中包含了如下所示的关键字:上面这些关键字都不能作为变量名。另外,Python 3还提供了如下表所示的内置函数:也不能...

高德地图实现一定范围内的关键字搜索

可能你的js后面还需要加载的插件:https://webapi.amap.com/maps?v=1.4.15&amp;key=2xx&amp;plugin=AMap.DistrictSearch,A...

this关键字

1、this关键字的运用局部变量和成员变量如果重名,在变量的前面加 this.,那么它就是成员变量2、案例this内存原理