Heim >Backend-Entwicklung >C++ >Wie ermöglicht das C#-Schlüsselwort „params' Listen variabler Argumente in Methoden?
In C# ist das Schlüsselwort „params“ ein leistungsstarkes Werkzeug zum Definieren von Methoden, die eine variable Anzahl von Argumenten akzeptieren. Obwohl es auf den ersten Blick überflüssig erscheinen mag, bietet es erhebliche Vorteile in Bezug auf Flexibilität und Komfort.
Wenn eine Methode mit „params“ definiert wird, kann dies der Fall sein wird mit mehreren Argumenten aufgerufen, als wäre es ein einzelnes Array. Dies ermöglicht eine größere Flexibilität im Vergleich zur expliziten Angabe der Anzahl der Parameter. Betrachten Sie zum Beispiel das folgende Beispiel:
static public int addTwoEach(int[] args) { int sum = 0; foreach (var item in args) sum += item + 2; return sum; }
Diese Methode kann nur mit einem einzelnen Array als Argument aufgerufen werden. Indem wir es jedoch wie folgt ändern:
static public int addTwoEach(params int[] args) { int sum = 0; foreach (var item in args) sum += item + 2; return sum; }
wir ermöglichen es ihm, mehrere Argumente als einzelne Werte zu akzeptieren. Hier ist ein Beispiel für den Aufruf der Methode mit einzelnen Argumenten:
addTwoEach(1, 2, 3, 4, 5);
Darüber hinaus ermöglicht „params“ den Aufruf der Methode mit einem Array als Argument, wie im vorherigen Beispiel. Somit bietet es eine praktische Abkürzung bei der Übergabe mehrerer Argumente.
Im bereitgestellten Beispiel ermöglicht das Schlüsselwort „params“ eine prägnantere Methodendefinition:
public static int addTwoEach(params int[] args) { return args.Sum() + 2 * args.Length; }
Dies vereinfacht die Logik der Methode, indem die integrierte Funktion „Summe“ genutzt wird, um die Summe der Argumente zu berechnen und die Länge des Arrays direkt mit 2 zu multiplizieren um zwei zu jedem Element hinzuzufügen.
Das obige ist der detaillierte Inhalt vonWie ermöglicht das C#-Schlüsselwort „params' Listen variabler Argumente in Methoden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!