Junior — Middle
Cosa distingue i delegati di tipo Action da quelli di tipo Func in termini di utilizzo e scopo?
sobes.tech AI
Risposta dell'AI
I delegati di tipo Action e Func in C# differiscono per scopo e valore di ritorno:
-
Action — è un delegato che rappresenta un metodo che non restituisce valore (void). Può accettare da 0 a 16 parametri, ma restituisce sempre void.
-
Func — è un delegato che rappresenta un metodo che restituisce un valore. Può accettare da 0 a 16 parametri, dove l'ultimo parametro è il tipo di valore di ritorno.
Esempio:
Action<string> print = message => Console.WriteLine(message);
print("Ciao, Action!"); // visualizza il messaggio, non restituisce nulla
Func<int, int, int> add = (a, b) => a + b;
int result = add(3, 4); // restituisce 7
Quindi, usa Action quando il metodo non restituisce nulla, e Func quando devi restituire un risultato.