C#是否支持可變數量的參數?C#是否支持可變數量的參數,以及如何?
如果是,C#如何支持變量no的參數?
什麼是例子?
變量參數如何有用?
編輯1:它有什麼限制?
編輯2:這個問題是不是可選PARAM但變量帕拉姆
C#是否支持可變數量的參數?C#是否支持可變數量的參數,以及如何?
如果是,C#如何支持變量no的參數?
什麼是例子?
變量參數如何有用?
編輯1:它有什麼限制?
編輯2:這個問題是不是可選PARAM但變量帕拉姆
是的。最典型的例子wourld是params object[] args
:
//Allows to pass in any number and types of parameters
public static void Program(params object[] args)
一個典型的用例將在命令行環境中傳遞參數的程序,在那裏你通過他們作爲字符串。程序然後驗證並正確地分配它們。
限制:
params
關鍵字每方法編輯:我讀了你的編輯後,我做了我的。下面的部分還介紹了實現可變數量參數的方法,但我認爲您確實在尋找params
的方法。
另外,更經典者之一,被稱爲方法重載。你可能已經用他們已經很多了:
//both methods have the same name and depending on wether you pass in a parameter
//or not, the first or the second is used.
public static void SayHello() {
Console.WriteLine("Hello");
}
public static void SayHello(string message) {
Console.WriteLine(message);
}
最後但並非最不重要的最令人興奮的一個:可選參數
//this time we specify a default value for the parameter message
//you now can call both, the method with parameter and the method without.
public static void SayHello(string message = "Hello") {
Console.WriteLine(message);
}
是,params:
public void SomeMethod(params object[] args)
PARAMS必須是最後一個參數,可以是任何類型的。不知道它是否必須是一個數組或只是一個IEnumerable。
C#支持使用params
關鍵字的可變長度參數數組。
下面是一個例子。
public static void UseParams(params int[] list)
{
for (int i = 0; i < list.Length; i++)
{
Console.Write(list[i] + " ");
}
Console.WriteLine();
}
還有更多的信息here。
我假定你的意思是variable number of method parameters。如果是這樣的:
void DoSomething(params double[] parms)
(或者具有固定參數混合)
void DoSomething(string param1, int param2, params double[] otherParams)
限制:
這就是我現在所能想到的,儘管可能有其他人。檢查文檔以獲取更多信息。
如何通過RPC傳遞參數從Java與JSON數據格式? – 2016-10-04 12:53:13