很抱歉提出这样一个模糊的问题,但我一直在寻找一天中最好的部分,我已经阅读了一篇又一篇文章(以及这里的许多问题),但就是找不到一个容易理解的答案。
我(认为我)知道 IEnumerable 的用途,但我无法理解它在使用泛型类型参数定义时的含义,例如:
IEnumerable<int> test = method();
这简直让我抓狂!请把我从痛苦中解脱出来,解释一下是什么意思?
最佳答案
安IEnumerable
基本上是对象的集合。它有方法 GetEnumerator()
这允许您遍历可枚举中的所有对象。
安IEnumerable<int>
基本上是整数的集合。它有方法 GetEnumerator()
这允许您遍历可枚举中的所有整数。
IEnumerable<int> test = method();
意味着 method()
如果整数来自某处,则正在获取一个集合。它可以是一个列表、一个数组或其他一些数据类型,但它肯定是它们的一组并且它们都是整数,并且您可以遍历它们。
这篇文章也可能有帮助:What's the difference between IEnumerable and Array, IList and List?
关于c# - 非泛型 IEnumerable 和泛型 IEnumerable<T> 之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5527346/