gpt4 book ai didi

c# - Predicate,无意义还是有用?

转载 作者:行者123 更新时间:2023-11-30 19:21:51 25 4
gpt4 key购买 nike

我正在努力了解 Predicate<T>类型,当 T 是除 bool 之外的任何东西时我都能理解。如果你有 Predicate<bool> ,我不知道如何使用它。

谁能告诉我这是愚蠢的做法还是真的有用?

Predicate<T>已经返回了一个 bool,那么在 bool 上测试一个条件似乎有点毫无意义......或者我弄错了吗?

最佳答案

Predicate 表示接受 T(任何类型)并返回 bool 的函数。

Predicate<int> isEven = i => i % 2 == 0;

你基本上是对的。对于 bool,想到的用途并不多。我的意思是,使用 boolean 值只能做这么多。

Predicate<bool> isFalse = input => !input;
Predicate<bool> isTrue = input => input;

你可以这样使用它:

var listOfBools = new List<Bool>() { true, false, false, true, true };
var trues = listOfBools.FindAll(isTrue);
var falses = listOfBools.FindAll(isFalse);

它的用处肯定不大,仅仅是因为使用 bool 可以做的事情有限。

关于c# - Predicate<Bool>,无意义还是有用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2218658/

25 4 0