.NET中的lambda表达式和谓词有什么区别?

Nat*_*ble 15 .net c# lambda predicate

.NET中的lambda表达式和谓词有什么区别?

Bro*_*ass 15

谓词是委托(函数对象),它返回一个布尔值.Lambda表达式可用于定义任何匿名函数,其中包括谓词,例如以lambda表达式的形式表达谓词:

Predicate<int> isEven2 = x => x % 2 == 0;
Run Code Online (Sandbox Code Playgroud)

这在功能上等同于:

Func<int,bool> isEven = x => x % 2 == 0;
Run Code Online (Sandbox Code Playgroud)

  • 谓词不具有*成为匿名函数. (3认同)