P21:为啥要学LINQ
对比Python :numpy
学习路线
用数据类型定义的理念解释委托
委托:方法的(数据)类型,指向方法的类型,对比 int i=5;整数类型的i指向整数5;数据的类型
D1 d = F1;//注意F1不带括号(),带了表示方法调用了 d();//执行D1所指向的方法 d = F2; d(); D2 d2 = Add; Console.WriteLine(d2(3, 5)); Console.ReadLine(); static void F1() { Console.WriteLine("我是F1"); } static void F2() { Console.WriteLine("我是F2"); } static int Add(int i1,int i2) { return i1 + i2; } delegate void D1();//委托要定义在后面 delegate int D2(int a,int b);//参数名字可以不一样,但是类型必须一样
日常编程中我们几乎不会自己定义委托,C#已经内置了两个泛型委托
最多16个,所以基本够用了
Func<int, int, int> f = Add;//最后一个是返回值类型,类型根据指定的函数来确定 Console.WriteLine(f(3, 5)); Action action = F1; action(); Console.ReadLine();
效果一致