C# 当中 foreach 的原理
程序员文章站
2022-06-30 13:16:40
在 C 当中的 语句实际上就是遍历迭代器的语法糖。例如我们拥有以下代码: 上述代码结构十分简单,作用就是遍历 数组,并将其结果输出到控制台当中。 由于 是一个 类型,它继承并实现了 接口,所以 语句实际上是翻译成下面伪代码进行遍历输出的。 ......
在 c# 当中的 foreach
语句实际上就是遍历迭代器的语法糖。例如我们拥有以下代码:
public class testclass { public void testmethod() { var integers = new int[] {1,2,3,4,5,6,7,8,9}; foreach(var @int in integers) { console.writeline(@int); } } }
上述代码结构十分简单,作用就是遍历 integers
数组,并将其结果输出到控制台当中。
由于 int[]
是一个array
类型,它继承并实现了 ienumerbale<t>
接口,所以 foreach
语句实际上是翻译成下面伪代码进行遍历输出的。
public class testclass { public void testmethod() { var integers = new int[] {1,2,3,4,5,6,7,8,9}; var tmpenumerator = integers.getenumerator(); try { while(tmpenumerator.movenext()) { var itemvalue = tempenumerator.current; // 需要执行的代码段 console.writeline(itemvalue); } } finally { tmpenumerator.dispose(); } } }