LINQ查询...如何执行?

时间:2012-10-25 08:31:20

标签: c# linq linq-to-entities

说我有下一个序列:

1
2
3
4
5
6
7
8
9
10

我需要与Linq做下一件事:

1,2;
2,3;
3,4;
4,5;
...
9,10;

无法得到它。

3 个答案:

答案 0 :(得分:5)

这是你想要的吗?

 var list = new[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

 var result = Enumerable.Range(0, list.Length - 1)
                        .Select(i => new[] {list[i], list[i + 1]});

答案 1 :(得分:0)

your_sequence.Take(high - low).Select(i => new []{i, i + 1})

在你的情况下:低= 1,高= 10。

要测试你可以写

Enumerable.Range(1, 10).Take(10 - 1).Select(i => new []{i, i + 1})
LinqPad

中的

答案 2 :(得分:0)

var res =
    Enumerable.Range(1, n).Select(item => new[] { item, item + 1 });