Bud*_*dda 106 .net c# f# sequence
F#有序列,它允许创建序列:
seq { 0 .. 10 }
Run Code Online (Sandbox Code Playgroud)
创建0到10之间的数字序列.
C#中有类似的东西吗?
ale*_*exn 192
你可以用Enumerable.Range(0, 10);
.例:
var seq = Enumerable.Range(0, 10);
Run Code Online (Sandbox Code Playgroud)
MSDN页面在这里.
Pau*_*erø 35
Enumerable.Range(0, 11);
Run Code Online (Sandbox Code Playgroud)
生成指定范围内的整数序列.
http://msdn.microsoft.com/en-us/library/system.linq.enumerable.range.aspx
Jos*_*ell 18
你可以创建一个简单的功能.这将适用于更复杂的序列.否则Enumerable.Range
应该这样做.
IEnumerable<int> Sequence(int n1, int n2)
{
while (n1 <= n2)
{
yield return n1++;
}
}
Run Code Online (Sandbox Code Playgroud)
Linq投影,索引索引过载(i)很少使用:
(new int[11]).Select((o,i) => i)
Run Code Online (Sandbox Code Playgroud)
我更喜欢这种方法的灵活性。
例如,如果我想要偶数:
(new int[11]).Select((item,i) => i*2)
Run Code Online (Sandbox Code Playgroud)
或者,如果我想每5分钟增加一个小时:
(new int[12]).Select((item,i) => i*5)
Run Code Online (Sandbox Code Playgroud)
或字符串:
(new int[12]).Select((item,i) => "Minute:" + i*5)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
50673 次 |
最近记录: |