泛型委托

it2026-02-15  12

<1>Predicate泛型委托

// 摘要:       // 表示定义一组条件并确定指定对象是否符合这些条件的方法。       //       // 参数:       // obj:       // 要按照由此委托表示的方法中定义的条件进行比较的对象。       //       // 类型参数:       // T:       // 要比较的对象的类型。       //       // 返回结果:       // 如果 obj 符合由此委托表示的方法中定义的条件,则为 true;否则为 false。       public delegate bool Predicate<in T>(T obj);

  需要传入一个T类型的参数,并且需要返回一个bool类型的返回值

 

<2>Action泛型委托

// 摘要: // 封装一个方法,该方法只有一个参数并且不返回值。 // // 参数: // obj: // 此委托封装的方法的参数。 // // 类型参数: // T: // 此委托封装的方法的参数类型。 public delegate void Action<in T>(T obj);

    可以有0个到16个输入参数,输入参数的类型是不确定的,但不能有返回值

<3>Func泛型委托

// 摘要: // 封装一个不具有参数但却返回 TResult 参数指定的类型值的方法。 // // 类型参数: // TResult: // 此委托封装的方法的返回值类型。 // // 返回结果: // 此委托封装的方法的返回值。 [TypeForwardedFrom("System.Core, Version=3.5.0.0, Culture=Neutral, PublicKeyToken=b77a5c561934e089")] public delegate TResult Func<out TResult>();

    0到16个输入参数,参数类型由使用者确定,它规定要有一个返回值,返回值的类型也由使用者确定

    参数列表中的最后一个泛型类型是方法的返回值类型

转载于:https://www.cnblogs.com/zhengwk/p/5286156.html

相关资源:C#泛型类、泛型方法、泛型接口、泛型委托的实例
最新回复(0)