Класс Enumerable
Статический класс Enumerable в пространстве имён
System.Linq добавляет методы расширения к
IEnumerable<T>.
Большинство операторов отложены и выполняются при обходе.
Синтаксис
using System.Linq;
IEnumerable<int> query = nums.Where(n => n > 0);
Пример
Давайте вызовем Where и ToList:
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<int> nums = new List<int> {1, 2, 3, 4, 5};
var query = nums.Where(n => n > 3);
Console.WriteLine(string.Join(" ", query.ToList()));
}
}
Результат выполнения кода:
"4 5"
Пример
Давайте создадим диапазон через Range:
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
var nums = Enumerable.Range(1, 5);
Console.WriteLine(string.Join(" ", nums));
}
}
Результат выполнения кода:
"1 2 3 4 5"
Смотрите также
-
отложенное выполнение,
когда цепочка LINQ обходит источник -
метод
Where,
который фильтрует элементы -
предложение
from,
которое задаёт источник в запросе -
метод
ToList,
который материализует последовательность