English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Predicate est comme Func et Action, représentant des délégués. Il représente une méthode définissant un ensemble de conditions et déterminant si un objet spécifique correspond à ces conditions. Ce délégué est utilisé par plusieurs méthodes de Array et List pour rechercher des éléments dans un ensemble. Les méthodes du délégué Predicate doivent prendre un paramètre d'entrée et retourner une valeur booléenne true ou false.
Le délégué Predicate est défini dans l'espace de noms System, comme indiqué ci-dessous :
Signature du Predicate :
public delegate bool Predicate<in T>(T obj);
Comme pour d'autres types de délégués, le délégué Predicate peut être utilisé avec n'importe quelle méthode, méthode anonyme ou expression lambda.
static bool IsUpperCase(string str) { return str.Equals(str.ToUpper()); } static void Main(string[] args) { Predicate<string> isUpper = IsUpperCase; bool result = isUpper("hello world!!"); Console.WriteLine(result); }
false
Il est également possible d'affecter une méthode anonyme au type Predicate, comme indiqué ci-dessous.
static void Main(string[] args) { Predicate<string> isUpper = delegate(string s) { return s.Equals(s.ToUpper()); }; bool result = isUpper("hello world!!"); }
Il est également possible d'affecter une expression lambda au type Predicate, comme indiqué ci-dessous.
static void Main(string[] args) { Predicate<string> isUpper = s => s.Equals(s.ToUpper()); bool result = isUpper("hello world!!"); }
Le délégué Predicate est un délégué générique qui retourne bool
Le délégué Predicate<int> représente un délégué qui prend un paramètre int et retourne bool
Le délégué Predicate a un seul paramètre et un retour de valeur fixe booléen
Les délégués predicate prennent un paramètre d'entrée et un type de retour booléen.
Les méthodes anonymes et les expressions Lambda peuvent être assignées aux délégués predicate.