C# 中的 Func 泛型类型
csharpprogrammingserver side programming更新于 2025/5/22 23:37:17
Func 泛型类型存储匿名方法并且是参数化类型。
在下面的例子中,我们有 4 个 func 类型实例 −
第一种类型接收 int 并返回 string
Func<int, string> one = (p) => string.Format("{0}", p);
第二种类型接收 bool & long 并返回 string
Func<bool, long, string> two = (q, p) =>string.Format("{0} and {1}", q, p);
第三种类型接收 bool & int 并返回字符串
Func<bool, int, string> three = (q, p) => string.Format("{0} and {1}", q, p);
第四种类型接收 decimal 并返回字符串
Func<decimal, string> four = (p) =>string.Format("{0}", p);
让我们看看如何显示它们 −
示例
using System;
using System.IO;
namespace Demo {
class Program {
static void Main(string[] args) {
// 四个 func 类型实例
// 第一种类型接收 int 并返回 string
Func<int, string> one = (p) =>
string.Format("{0}", p);
// 第二种类型接收 bool & long 并返回 string
Func<bool, long, string> two = (q, p) =>>
string.Format("{0} and {1}", q, p);
// three 类型接收 bool & int 并返回 string
Func<bool, int, string> three = (q, p) =>>
string.Format("{0} and {1}", q, p);
// 第四种类型接收小数并返回字符串
Func<decimal, string> four = (p) =>
string.Format("{0}", p);
Console.WriteLine(one.Invoke(25));
Console.WriteLine(two.Invoke(false, 76756566));
Console.WriteLine(three.Invoke(true, 50));
Console.WriteLine(four.Invoke(1.2m));
}
}
}
输出
25 False and 76756566 True and 50 1.2

