Переписать код на языке C# в синтаксисе LINQ (Language Integrated Query) означает использовать функциональный стиль программирования и операторы языка запросов для выполнения разнообразных операций над коллекциями данных. LINQ предоставляет организованный и декларативный подход к операциям с данными, что делает код более понятным и сокращает количество бурового кода, необходимого для выполнения операций на коллекциях.
Для переписывания кода на языке C# в LINQ-стиле первым делом необходимо включить пространство имен "System.Linq", чтобы использовать функциональности LINQ.
Предположим, у нас есть следующий код на языке C#:
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 }; List<int> evenNumbers = new List<int>(); foreach (int number in numbers) { if (number % 2 == 0) { evenNumbers.Add(number); } }
Чтобы переписать этот код с использованием LINQ, мы можем использовать операторы запросов для фильтрации элементов коллекции и создания новой коллекции, содержащей только четные числа. Код на LINQ может выглядеть следующим образом:
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 }; List<int> evenNumbers = numbers.Where(number => number % 2 == 0).ToList();
В этом примере мы используем метод расширения Where
, который принимает предикатное выражение в виде лямбда-функции для фильтрации элементов коллекции. Результатом выражения number % 2 == 0
является значение true
, если число number
четное, и false
в противном случае. Метод Where
выбирает только те элементы коллекции, для которых предикатное выражение возвращает true
.
Метод ToList
преобразует результат запроса в новый список типа List<int>
.
Таким образом, код на языке C# был переписан с использованием LINQ для выполнения операции фильтрации элементов коллекции и создания новой коллекции, содержащей только четные числа. Это демонстрирует декларативный и компактный стиль кодирования, характерный для LINQ.