public delegate TResult Func
在 C# 中,
Func 是一个泛型委托,用于表示没有参数或有参数但无返回值的方法。Func 委托是 .NET 框架中 System 命名空间的一部分,它被广泛用于 LINQ 查询和异步编程中,因为它允许你以类型安全的方式传递方法调用。Func 委托有多个重载版本,可以根据需要接受不同数量的参数。以下是一些常见的 Func 委托重载:-
Func<TResult>:不接受参数,返回一个TResult类型的结果。 -
Func<T, TResult>:接受一个类型为T的参数,返回一个TResult类型的结果。 -
Func<T1, T2, TResult>:接受两个参数,类型分别为T1和T2,返回一个TResult类型的结果。 -
Func<T1, T2, T3, TResult>:接受三个参数,类型分别为T1、T2和T3,返回一个TResult类型的结果。 -
Func<T1, T2, T3, T4, TResult>:接受四个参数,类型分别为T1、T2、T3和T4,返回一个TResult类型的结果。
Func 委托的语法示例:csharp复制
// 没有参数,返回一个 int 结果
Func<int> noParams = () => 42;
// 一个参数,返回一个 string 结果
Func<int, string> oneParam = (x) => $"The number is {x}";
// 两个参数,返回一个 bool 结果
Func<int, int, bool> twoParams = (x, y) => x > y;
// 使用 Func 委托
int result = noParams(); // 返回 42
string message = oneParam(10); // 返回 "The number is 10"
bool comparison = twoParams(5, 3); // 返回 true
在这些示例中,
Func 委托被用来定义没有参数的方法、接受一个参数的方法和接受两个参数的方法。这些委托可以被赋值给变量,并且可以在需要时调用它们,就像调用普通方法一样。
浙公网安备 33010602011771号