//预计算和缓存示例
static void Main(string[] args)
{
//第一种方法
var add = CalcFunc();
Console.WriteLine(add(10)(20));
var add30 = add(30);
var add40 = add30(40);
Console.WriteLine(add40);
Console.Read();
}
// 定义函数,返回一个调用函数
static Func<int, Func<int, int>> CalcFunc()
{
return x =>
{
return y => x + y;
};
}
//预计算和缓存示例 static void Main(string[] args) { List<string > list = new List<string>(); list.Add("one"); list.Add("two"); list.Add("three"); list.Add("four"); var fun1 = FindStr(list); Console.WriteLine(fun1("two")); Console.Read(); } //作用缓冲 static Func<string , bool> FindStr(List<string > lst) { HashSet<string > hsSet = new HashSet<string >(lst); return item => { return hsSet.Contains(item); }; }