2014-09-17 1 views
3

Я хочу элегантный способ создания нового List<int> просто целыми числами.Элегантный способ создания списка <int> только от (int) от и (int) до

Пример:

var from = 2; 
var to = 5; 

То, что я хочу это:

List<int> { 2, 3, 4, 5 }; 

Конечно, я мог бы сделать это в простом цикле, как это:

var results = new List<int>(); 
for (var i = from; i <= to; i++) 
{ 
    results.Add(i); 
} 

Но я хочу некоторые более эффективный или элегантный способ.

ответ

7

Конечно, использовать Enumerable.Range:

var results = Enumerable.Range(2, 4).ToList(); 

Обратите внимание на 4 здесь относится к числу целых чисел, чтобы включить в список результатов. Таким образом, чтобы создать диапазон, заданный from и to переменных, используйте:

var results = Enumerable.Range(from, to - from + 1).ToList(); 
2
var results = Enumerable.Range(from,to-from+1); 
2

использование Enumerable.Range

var results = Enumerable.Range(from, to - from + 1); // +1 to include last number