Take the 2-minute tour ×  In Ruby there is an each_cons on
Enumerable. It works like this  (1..5).each_cons(3) {|n| p n}
[1, 2, 3] [2, 3, 4] [3, 4, 5]  I would like to do this in C#.
LINQ would be nice.  The following does something similar but it
loops one to many and it's also hardcoded to return only two
elements  var cons = ints.Select((o, i) =>             new
int[]{ ints[i], i == ints.Length - 1 ? 0 : ints[i + 1] });  It
would be nice if it could be created as an iterator over the
original array instead of having to create a lot of arrays.
share|improve this question  3 Answers 3  up vote 9 down vote
accepted  Try the following  var ints = Enumerable.Range(1,
3).Select(x => Enumerable.Range(x, 3));  This will return an
IEnumerable<IEnumerable<int>> with the specified values. You can
add the .ToArray expression at any point to get it into an array
if that's the intent (can't tell if that's whatthe [] mean in
ruby)  share|improve this answer +1 I use statements like this
all the time –  Adam Ralph Jan 1