当前位置:首页 > Windows程序 > 正文

返回值为bool的委托 static void Main( string [] args) {Predicate int

2024-03-31 Windows程序

Delegate至少0个参数,,至多32个参数,可以无返回值,也可以指定返回值类型。这个是祖宗。
  Func可以接受0个至16个传入参数,必需具有返回值。
  Action可以接受0个至16个传入参数,无返回值。
  Predicate只能接受一个传入参数,返回值为bool类型。

public delegate bool Predicate<in T>(T obj); public delegate TResult Func<in T, out TResult>(T arg);

Func<T, bool> :暗示有传入T类型的参数,返回值为bool的委托

Predicate<T>:暗示有传入T类型的参数,返回值为bool的委托

static void Main(string[] args) { Predicate<int> myPredicate = i => i > 10; Func<int, bool> myFunc = i => i > 10; List<int> list = new List<int>(); list.Add(5); list.Add(9); list.Add(20); list.Add(30); List<int> newList = list.FindAll(myPredicate); List<int> newListFunc = list.Where(myFunc).ToList(); Console.ReadKey(); }

看到Predicate和Func接受的是完全不异的Lambada表达式,

而且执行功效newList和newListFunc完全不异。

 

 C#中的Predicate<T>与Func<T, bool>

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/35474.html

Jm-杰米博客Jamie
草根站长的技术交流乐园!IT不会不要紧快来好好学习吧!
  • 20786文章总数
  • 7494590访问次数
  • 建站天数
  • 友情链接