Главная страница » C# » 45. Комбинирование операций и методов
Комбинирование операций и методов — это процесс, при котором несколько методов и операторов объединяются в одном выражении для упрощения кода, улучшения читаемости и повышения эффективности.
Примеры комбинирования:
method chaining
)В C# можно объединять арифметические операции с вызовами методов:
Пример:
int DoubleAndSum(int a, int b)
{
return (a * 2) + (b * 2);
}
Console.WriteLine(DoubleAndSum(3, 5)); // 16
Здесь результат умножения передается в сложение, сокращая количество строк.
Многие классы поддерживают вызов методов в цепочку, что улучшает читаемость кода.
Пример с string
:
string text = " привет, мир! ";
string result = text.Trim().ToUpper().Replace("МИР", "C#");
Console.WriteLine(result); // "ПРИВЕТ, C#"
Здесь три метода применяются последовательно.
Пример с List<T>
и LINQ:
List numbers = new List { 1, 2, 3, 4, 5, 6 };
var result = numbers
.Where(n => n % 2 == 0) // Оставляем четные
.Select(n => n * n) // Возводим в квадрат
.OrderByDescending(n => n); // Сортируем по убыванию
Console.WriteLine(string.Join(", ", result)); // 36, 16, 4
Здесь три метода (Where
, Select
, OrderByDescending
) вызываются последовательно.
Вложенные вызовы методов позволяют объединять их результаты без создания промежуточных переменных.
Пример:
double SquareRootOfSum(int a, int b)
{
return Math.Sqrt(a + b);
}
Console.WriteLine(SquareRootOfSum(9, 16)); // 5
Здесь сначала вычисляется сумма, затем её корень.
Методы можно комбинировать с логическими операторами (&&
, ||
, !
).
Пример:
bool IsValidString(string input)
{
return !string.IsNullOrWhiteSpace(input) && input.Length > 5;
}
Console.WriteLine(IsValidString("Hello")); // false
Console.WriteLine(IsValidString("Привет!")); // true
Здесь два условия объединены в одном выражении.
Можно комбинировать методы с тернарным оператором (?:
).
Пример:
string GetMessage(int age)
{
return age >= 18 ? "Доступ разрешен" : "Доступ запрещен";
}
Console.WriteLine(GetMessage(20)); // Доступ разрешен
Console.WriteLine(GetMessage(15)); // Доступ запрещен
Здесь метод возвращает разные строки в зависимости от возраста.
method chaining
) делают код последовательным и выразительным.Напишите метод, который принимает список чисел и возвращает строку с числами, которые:
Пример:
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static string ProcessNumbers(List numbers)
{
return string.Join(", ", numbers
.Where(n => n > 10)
.Select(n => n * 2)
.OrderByDescending(n => n));
}
static void Main()
{
List numbers = new List { 5, 12, 8, 20, 3, 15 };
Console.WriteLine(ProcessNumbers(numbers)); // "40, 30, 24"
}
}
Попробуйте написать и запустить этот код, чтобы убедиться в правильности выполнения операций и особенностях работы с числами с плавающей точкой.
Телефон: +375 33 910-08-92
Email: info@codefor.tech
Адрес: г. Барановичи, ул. Пирогова, д. 7
© 2024-2025 Все права защищены. CodeFor.