C#委托基础系列原于2011年2月份发表在我的新浪博客中,现在将其般至本博客。
- class Program
- {
- double AddInt(int x, int y)
- {
- return x + y;
- }
- string AddString(string s1, string s2)
- {
- return s1 + s2;
- }
- static void Main(string[] args)
- {
- Program p = new Program();
- // 以为前两个参数为int,他们运行的结果为double,最后一个参数与AddInt返回值一致
- Func<int, int, double> funcInt = p.AddInt;
- Console.WriteLine("funcInt的值为{0}", funcInt(100, 300));
- Func<string, string, string> funcString = p.AddString;
- Console.WriteLine("funcString的值为{0}", funcString("xy", "xy"));
- // 匿名方法
- Func<float, float, float> fucFloat = delegate(float x, float y)
- {
- return x + y;
- };
- Console.WriteLine("funcFloat的值为{0}", fucFloat(190.7F, 99999.9F));
- // Lambda表达式
- Func<string, string, string> funString2 = (x, y) => (x + y);
- Console.WriteLine("funString2的值为{0}", funString2("xy", "xy"));
- Console.ReadLine();
- }
- }
本文转自IT徐胖子的专栏博客51CTO博客,原文链接http://blog.51cto.com/woshixy/1071021如需转载请自行联系原作者
woshixuye111