c# yield

当我们需要一个方法返回一个列表的时候,一般是构造好一个list<>然后返回,但是在这种做法在面对大数据量的时候会降低性能

这时候就需要使用yield了,当然也可以使用委托

yield使用及原理,这篇文章已经将yield介绍得很清楚了

使用yield的方法是不会返回空值的,因为实际是返回了一个实现了IEnumerable<>, IEnumerable, IEnumerator<>, IEnumerator, IDisposable的类

只是如果该方法返回的列表是空的话,使用foreach遍历这个列表的时候找不到项而已,找不到项并不会抛出异常,只是不执行foreach里面的语句罢了,这也是在情理之中

你可能感兴趣的:(yield)