Junior — Middle
Ce diferență există între delegații de tip Action și cei de tip Func în ceea ce privește utilizarea și scopul lor?
sobes.tech AI
Răspuns de la AI
Делегаты типа Action и Func в C# отличаются по назначению и возвращаемому значению:
-
Action — это делегат, который представляет метод, не возвращающий значение (void). Он может принимать от 0 до 16 параметров, но всегда возвращает void.
-
Func — это делегат, который представляет метод, возвращающий значение. Он может принимать от 0 до 16 параметров, где последний параметр — это тип возвращаемого значения.
Пример:
Action<string> print = message => Console.WriteLine(message);
print("Hello, Action!"); // выводит сообщение, ничего не возвращает
Func<int, int, int> add = (a, b) => a + b;
int result = add(3, 4); // возвращает 7
Таким образом, используйте Action, когда метод ничего не возвращает, и Func, когда нужно вернуть результат.