温馨提示×

c# predicate参数类型

c#
小樊
83
2024-11-21 15:03:32
栏目: 编程语言

在C#中,Predicate是一个泛型接口,用于表示一个返回布尔值的委托。Predicate接口通常用于集合类(如List、Dictionary等)的过滤操作。Predicate接口的定义如下:

public delegate bool Predicate<T>(T obj);

这里的T表示类型参数,它可以是任何类型。当你需要对一个集合类进行过滤时,可以传递一个实现了Predicate接口的委托作为参数。例如,如果你想从一个整数列表中筛选出所有偶数,可以定义一个Predicate委托,如下所示:

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

然后,你可以将这个Predicate委托传递给集合类的过滤方法,如List<T>.FindAll

List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6 };
List<int> evenNumbers = numbers.FindAll(isEven);

在这个例子中,evenNumbers将包含筛选后的偶数列表(2, 4, 6)。

0