English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Predicate هي مثل Func و Action تمثل. تمثل طريقة تعريف مجموعة من الشروط وتحديد ما إذا كانت الميزة المحددة تتوافق مع هذه الشروط. يتم استخدام هذا الوديعة من قبل عدة طرق من Array و List لبحث عن العناصر في المجموعات. يجب أن يأخذ وديعة Predicate إدخالًا واحدًا ويقوم بإرجاع قيمة بولية true أو false.
مفهوم Predicate في المساحة الاسمية System كما هو موضح أدناه:
توقيع Predicate:
public delegate bool Predicate<in T>(T obj);
مثل أنواع الوديعة الأخرى، يمكن استخدام مفهوم Predicate مع أي طريقة، طريقة مجهولة أو تعبير لامبدا.
static bool IsUpperCase(string str) { return str.Equals(str.ToUpper()); {} static void Main(string[] args) { مفهوم <string> isUpper = IsUpperCase; bool result = isUpper("hello world!!"); Console.WriteLine(result); {}
false
يمكن أيضًا تخصيص طريقة مجهولة لتصنيف Predicate كما هو موضح أدناه.
static void Main(string[] args) { مفهوم <string> isUpper = delegate(string s) { return s.Equals(s.ToUpper()); }; bool result = isUpper("hello world!!"); {}
يمكن أيضًا تخصيص تعبير لامبدا لتصنيف Predicate كما هو موضح أدناه.
static void Main(string[] args) { مفهوم <string> isUpper = s => s.Equals(s.ToUpper()); bool result = isUpper("hello world!!"); {}
المستأجر predicate هو مستأجر عام يرجع النوع إليه bool
المستأجر Predicate<int> يعني أن الإدخال هو int والنوع المحدد مسبقًا هو bool
المستأجر predicate لديه فقط إدخال واحد، والنوع المحدد مسبقًا هو bool
يأخذ المستأجر predicate إدخالًا واحدًا ويعود قيمة من نوع布尔ية.
يمكن تخصيص الأنواع الغامضة وأعطيات Lambda للمستأجر predicate.