如何在IEnumerable <int>?</int>中插入值

时间:2011-12-05 11:03:52

标签: c#

我有这个:

IEnumerable<int> intYear = Enumerable.Empty<int>();

如何插入一些值?我没有看到任何intYear.Add()方法。

像2010年,2011年等等......

4 个答案:

答案 0 :(得分:11)

您应该使用IList<int>代替IEnumerable<int>

IList<int> intYear = new List<int>();
intYear.Add(2011);
// and so on

IList<T>实现了IEnumerable<T>,因此您可以将其传递给以IEnumerable<T>为参数的任何方法。

答案 1 :(得分:6)

您需要使用ICollection<T>,因为IEnumerable<T>仅用于迭代集合。

ICollection<int> years = new List<T>();
years.Add(2010);
years.Add(2011);

答案 2 :(得分:3)

IEnumerable没有Add方法。你应该使用IList。

IList<int> intYear = new List<int>();
intYear.Add(2010);

答案 3 :(得分:0)

通过使用IEnumerable Class的Concat(IEnumerable)方法,您可以先将所有值填充到List中,然后将其分配给IEnumerable列表。