【发布时间】:2014-04-23 05:44:58
【问题描述】:
我想编写一个函数,它返回一个数组,该数组包含一个 for 循环,该循环枚举一些我想将它们存储到数组中的值。我试过这个
public int[] a()
{
int[] b=new int []{};
for(int i=0;i<10;i++)
{
b[i]=i {Index out of range exception comes}
}
return b;
}
由于性能问题,我不喜欢使用enumerable.range()。
我想保持数组大小为空。
【问题讨论】:
-
什么语言? (另外,您的键盘上的
<tab>键是否损坏或丢失?) -
您认为
Enumerable.Range有什么性能问题,为什么?如果要在其中存储任何内容,则不能“将数组大小保持为空”,这是没有意义的。 -
好的有没有办法将for循环值存储在数组中
-
for 循环是语句而不是表达式,因此没有值
-
Enumerable.Range返回一个 IEnumerable,直到您开始对其进行迭代(或调用ToArray或类似方法)才会对其进行评估。这有点像“在数组中存储for循环”。你可以说var a = Enumerable.Range(0,100000),当然只会使用几个字节的内存,直到你调用ToArray()。