Heim  >  Artikel  >  Backend-Entwicklung  >  C#-Aktionsdelegierter

C#-Aktionsdelegierter

WBOY
WBOYOriginal
2024-09-03 15:31:391022Durchsuche

Der integrierte Delegat gehört zum generischen Typ, der unter dem System-Namespace definiert ist. Sie können es in Methoden verwenden, die keinen Rückgabewert haben, was bedeutet, dass sie Aktionsdelegaten genannt werden. Ein Aktionsdelegat kann mindestens einen Eingabeparameter und maximal sechzehn Eingabeparameter enthalten, und diese Parameter können denselben Datentyp oder unterschiedliche Datentypen haben. Durch die Verwendung eines Aktionsdelegaten in Ihrem Programm wird es optimierter und lesbarer. In diesem Thema lernen wir etwas über C# Action Delegate.

Die Syntax für Action Delegate in C# lautet wie folgt:

public delegate void Action < in input_parameter_type > (input_parameter_type   object);
public delegate void Action < in input_parameter_type1, in input_parameter_type2 >( input_parameter_type1 argument1, input_parameter_type2 argument2);

input_paramter_type, input_paramter_type1 und input_paramter_type2 stellen die Typen der Eingabeparameter dar, während argument1 und argument2 die Parameter sind, die in der vom Aktionsdelegierten gekapselten Methode verwendet werden.

Arbeitsweise von Action Delegate in C#

  • Wenn Sie einen Aktionsdelegaten zur Verwendung in Methoden benötigen, die keinen Rückgabewert enthalten, d. h. Methoden mit dem Rückgabetyp „void“, bezeichnen Sie ihn als Aktionsdelegaten.
  • Der Aktionsdelegat gehört zu einem generischen Typ und ist im System-Namespace definiert.
  • Die minimale Anzahl von Eingabeparametern, die in einem Aktionsdelegaten enthalten sein können, beträgt eins, und die maximale Anzahl von Eingabeparametern, die in einem Aktionsdelegaten enthalten sein können, beträgt sechzehn, und die Art der verwendeten Parameter kann von denselben Daten sein Typ oder verschiedene Datentypen.
  • Durch die Verwendung von Aktionsdelegierten im Programm wird das Programm optimierter und lesbarer.

Beispiele

Hier sind die folgenden Beispiele:

Beispiel #1

C#-Programm zur Demonstration von Action Delegate zum Verketten der angegebenen Zeichenfolge und Drucken der Anweisung als Ausgabe auf dem Bildschirm.

Code:

using System;
//a class called check is defined
class check
{
// a method called join is called which takes the parameter passed to the method and prints it as the output on the screen
public static void join(string str)
{
Console.WriteLine("Welcome to {0}", str);
}
// main method is called within which the join function is called by defining an action delegate
static public void Main()
{
//an action delegate is defined which takes one input parameter which is passed to the join method
Action<string> stringvalue = join;
stringvalue("C#");
}
}

Ausgabe:

C#-Aktionsdelegierter

Das obige Programm definiert eine Klasse namens „check“ und ruft eine Methode namens „join“ auf, die den ihr übergebenen Parameter als Ausgabe auf dem Bildschirm ausgibt. Als nächstes ruft die Hauptmethode die Funktion „Join“ auf, indem sie einen Aktionsdelegaten definiert. Das Programm definiert dann einen Aktionsdelegaten, der einen Eingabeparameter akzeptiert.

Beispiel #2

C#-Programm zur Demonstration des Aktionsdelegierten zur Berechnung der Potenz einer bestimmten Zahl.

Code:

using System;
//a class called check is defined
class check
{
// a method called power is defined which takes two parameters passed to the method and calculates the power of the given number and displays it on the screen
public static void power(double number1, double number2)
{
Console.WriteLine("The power of the given number is {0}", Math.Pow(number1, number2));
}
// main method is called within which the power function is called by defining an action delegate
static public void Main()
{
//an action delegate is defined which takes two input parameters which is passed to the power method
Action<double, double> doublevalue = power;
doublevalue(2,2);
}
}

Ausgabe:

C#-Aktionsdelegierter

Im bereitgestellten Programm definieren wir eine Klasse mit dem Namen „check“. Diese Klasse enthält eine Methode namens „power“, die die Potenz zweier übergebener Parameter berechnet und das Ergebnis auf dem Bildschirm anzeigt. Anschließend rufen wir die Hauptmethode auf, in der wir die „Power“-Funktion aufrufen, indem wir einen Aktionsdelegaten definieren. Wir definieren auch einen Aktionsdelegaten, der zwei Eingabeparameter akzeptiert.

Beispiel #3

C#-Programm zur Demonstration eines Aktionsdelegierten zum Ermitteln des Quadrats der angegebenen Zahl.

Code:

using System;
//a class called check is defined
class check
{
// a method called power is defined which takes two parameters passed to the method and calculates the power of the given number and displays it on the screen
public static void square(int number)
{
Console.WriteLine("The square of the given number is {0}", number * number);
}
// main method is called within which the power function is called by defining an action delegate
static public void Main()
{
//an action delegate is defined which takes one input parameter which is passed to the square method
Action<int> answer = square;
answer(3);
}
}

Ausgabe:

C#-Aktionsdelegierter

Im obigen Programm definieren wir eine Klasse namens „check“. Innerhalb dieser Klasse definieren wir eine Methode namens „power“, die zwei Parameter als Eingaben verwendet. Diese Methode berechnet die Potenz der angegebenen Zahl und zeigt das Ergebnis auf dem Bildschirm an. Anschließend rufen wir die Hauptmethode auf, in der wir die „Power“-Funktion aufrufen, indem wir einen Aktionsdelegaten definieren. Konkret definieren wir einen Aktionsdelegaten, der zwei Eingabeparameter akzeptiert.

Fazit

In diesem Tutorial verstehen wir das Konzept des Aktionsdelegaten in C# durch Definition, die Syntax des Aktionsdelegaten und die Funktionsweise des Aktionsdelegaten in C# anhand von Programmierbeispielen und deren Ausgaben.

Das obige ist der detaillierte Inhalt vonC#-Aktionsdelegierter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:C# schreibgeschütztNächster Artikel:C# schreibgeschützt