首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

IEnumerable<InnerBoundary> 和 List<InnerBoundary> 有什么区别解决办法

2012-03-28 
IEnumerableInnerBoundary 和ListInnerBoundary 有什么区别ListInnerBoundary.add 可以通过add给lis

IEnumerable<InnerBoundary> 和 List<InnerBoundary> 有什么区别
List<InnerBoundary>.add 可以通过add给list 负值,我如何给 IEnumerable<InnerBoundary> 负值,他没有add function,谢谢!

[解决办法]
IEnumerable不能赋值,只能读取

C# code
            InnerBoundary[] nnn=new InnerBoundary[10];            IEnumerable<InnerBoundary> aaa=nnn;            IEnumerator<InnerBoundary> oo= aaa.GetEnumerator();            while (oo.MoveNext())            {                InnerBoundary b = oo.Current;                b.属性=...            }
[解决办法]
List是实实在在存在的,IEnumerable不一定。

你可以构造一个无限枚举:
IEnumerable<int> foo()
{
while (true) yield return 1;
}
你可以这么用:
foreach (int x in foo().Take(100))
Console.WriteLine(x);

也可以用:
foreach (int x in foo().Take(10000))
Console.WriteLine(x);

它可以无限制地拿出任意多个元素。

热点排行