3种泛型委托

  <1>Predicate泛型委托

var a = new Predicate<int>(方法);
Predicate的定义
public delegate bool Predicate<in T>(T obj);

<2>Action泛型委托
   Action泛型委托限制的就不那么死了,
   他代表了一类方法:
   可以有0个到16个输入参数,
   输入参数的类型是不确定的,
   但不能有返回值,
        
var a1 = new Action(x);
var a2 = new Action<int, string>(y);
static void x()
{
    //do what you want
}
static void y(int a, string b)
{
    //do what you want
}

 

 

<3>Func泛型委托

  为了弥补Action泛型委托,不能返回值的不足
  .net提供了Func泛型委托,
  相同的是它也是最多0到16个输入参数,参数类型由使用者确定
  不同的是它规定要有一个返回值,返回值的类型也由使用者确定
var d5 = new Func<int, string>(a);
注意:string类型(最后一个泛型类型)是方法的返回值类型

 

static string a(int a)
{   //do what you want   return string.Empty; }

posted @ 2014-03-02 23:23  情人泪  阅读(271)  评论(0编辑  收藏  举报