Ton*_*ion 2 c# boolean predicate
我试图绕过这种Predicate<T>类型,当T是任何东西时我都能理解它,除了bool.如果你有Predicate<bool>,我不知道如何使用它.
有人可以告诉我这是否是一件愚蠢的事情,或者它是否真的有用?
Predicate<T> 已经返回一个bool,所以然后测试bool上的条件似乎有点无意义......或者我弄错了?
谓词意味着一个函数,它接受一个T(任何类型)并返回一个bool.
Predicate<int> isEven = i => i % 2 == 0;
Run Code Online (Sandbox Code Playgroud)
你大部分都是对的.对于bool来说,想到的用途并不多.我的意思是,只有这么多你可以做一个布尔.
Predicate<bool> isFalse = input => !input;
Predicate<bool> isTrue = input => input;
Run Code Online (Sandbox Code Playgroud)
您可以像这样使用它:
var listOfBools = new List<Bool>() { true, false, false, true, true };
var trues = listOfBools.FindAll(isTrue);
var falses = listOfBools.FindAll(isFalse);
Run Code Online (Sandbox Code Playgroud)
它当然不那么有用,仅仅因为你可以用bool做很多事情.