2015-01-09 45 views

回答

11

IEnumerable<T>露出表示只进光标放在一些数据。您可以从集合的开始到结束,一次只查看一个项目。

IReadOnlyList<T>代表可读的随机访问集合。

IEnumerable<T>更为通用,因为它可以表示即时生成的项目,通过网络传入的数据,来自数据库的行等。另一方面,IReadOnlyList<T>基本上只代表内存中的集合。

如果您只需要一次查看每个项目,按顺序,然后IEnumerable<T>是最好的选择 - 这是更一般的。

我建议实际上看看C++标准模板库 - 他们对各种类型迭代器的讨论实际上非常适合您的问题。

相关问题