Ein integrierter generischer Typdelegat ist ein Prädikatdelegat in C#, der unter dem Namespace-System definiert ist. Der Namespace und die Methoden, die einen bestimmten Satz von Kriterien enthalten, können mit dem Prädikat-Delegaten gearbeitet werden, um zu bestimmen, ob der übergebene Parameter die angegebenen Kriterien erfüllen kann oder nicht, und nur eine Eingabe wird von diesem Kriterium übernommen, das die Werte entweder wahr oder falsch und den Prädikat-Delegierten zurückgibt ist mit den anderen Delegaten Func-Delegat und Aktionsdelegat identisch.
Syntax:
public delegate bool Predicate <in P>(P obj);
Wobei der Objekttyp durch P dargestellt wird und obj das Objekt ist, das die in einer Methode definierten Kriterien vergleicht und durch das Prädikatdelegaten dargestellt wird.
Im Folgenden finden Sie die genannten Beispiele:
C#-Programm zur Demonstration der Verwendung des Prädikatdelegaten in einem Programm, um zu überprüfen, ob die als Parameter übergebene Zeichenfolge in Großbuchstaben geschrieben ist oder nicht.
Code:
using System; //a namespace called program is defined namespace program { //a class called check is defined public class check { //a Boolean method is defined to check if the given string is written in capital letters or not. If written in capital letters, true is returned else False is returned. static bool IsUC(string stri) { return stri.Equals(stri.ToUpper()); } //main method is called static void Main(string[] args) { //a predicate delegate is defined with object type as string and IsUC is an object which compares the criteria that is defined within a method and is represented by predicate delegate. Predicate<string> isU = IsUC; //The result of the predicate delegate is stored in a variable called res bool res = isU("welcome to c#"); //the result is displayed Console.WriteLine(res); } } }
Ausgabe:
Erklärung:
C#-Programm zur Demonstration der Verwendung des Prädikatdelegierten in einem Programm, um zu überprüfen, ob die Länge der angegebenen Zeichenfolge kleiner als ein angegebener Wert ist oder nicht.
Code:
using System; //a class called program is defined class program { // a predicate delegate is defined with object type as string public delegate bool my_del(string stri); // a method is defined inside a predicate delegate by passing the object as parameter to check if the length of the given string is less than a specified value. If less than the given specified value, true is returned else false is returned public static bool fun(string stri) { if (stri.Length < 5) { return true; } else { return false; } } //Main method is called static public void Main() { // a predicate delegate is defined with object type as string and fun is an object which compares the criteria that is defined within a method and is represented by predicate delegate. my_del obj = fun; //The string to be passed as a parameter to predicate delegate is written here Console.WriteLine(obj("Shobha")); } }
Ausgabe:
Erklärung:
Im Folgenden sind die Vorteile von C# Predicate aufgeführt:
Das obige ist der detaillierte Inhalt vonC#-Prädikat. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!