在C#中,Func是一种泛型委托类型,用于表示一个具有指定参数和返回类型的方法。在使用Func委托时,需要指定参数的类型和返回值的类型。
Func的定义如下:
public delegate TResult Func<in T, out TResult>(T arg);
public delegate TResult Func<in T1, in T2, out TResult>(T1 arg1, T2 arg2);
// ...
Func委托可以有最多16个参数。第一个泛型参数表示方法的参数类型,最后一个泛型参数表示方法的返回值类型。
使用Func委托的步骤如下:
以下是一个使用Func委托的示例:
// 定义一个方法,接受一个整数参数并返回字符串
static string ConvertToString(int number)
{
return number.ToString();
}
// 使用Func委托
Func<int, string> convertFunc = ConvertToString; // 创建Func委托实例
string result = convertFunc.Invoke(123); // 调用委托的Invoke方法执行方法
Console.WriteLine(result); // 输出:123
在上面的示例中,我们定义了一个ConvertToString方法,该方法接受一个整数参数并返回一个字符串。然后,我们创建了一个Func委托实例convertFunc,指定了ConvertToString方法作为参数。最后,我们调用委托的Invoke方法来执行方法,并将结果打印到控制台上。