Thoughts on foreach with Enumerable.Range vs traditional for loop

前端 未结 18 1247
花落未央
花落未央 2021-01-30 06:13

In C# 3.0, I\'m liking this style:

// Write the numbers 1 thru 7
foreach (int index in Enumerable.Range( 1, 7 ))
{
    Console.WriteLine(index);
}
18条回答
  •  难免孤独
    2021-01-30 06:57

    @Luke: I reimplemented your To() extension method and used the Enumerable.Range() method to do it. This way it comes out a little shorter and uses as much infrastructure given to us by .NET as possible:

    public static IEnumerable To(this int from, int to)
    { 
        return from < to 
                ? Enumerable.Range(from, to - from + 1) 
                : Enumerable.Range(to, from - to + 1).Reverse();
    }
    

提交回复
热议问题