具有可变数量参数的函数

正如标题所说,我需要知道在方法参数中是否存在与java的相应的语法,例如

 void printReport(String header, int... numbers) { //numbers represents varargs System.out.println(header); for (int num : numbers) { System.out.println(num); } } 

(代码由维基百科提供)

是的你可以写这样的东西:

 void PrintReport(string header, params int[] numbers) { Console.WriteLine(header); foreach (int number in numbers) Console.WriteLine(number); } 

尝试使用params关键字,放在语句之前,例如

 myFunction(params int[] numbers); 

就在这里。 正如阿德里亚诺所说,你可以使用C#’params’关键字。 一个例子是下面的链接:

参数(C#参考)

http://msdn.microsoft.com/en-us/library/w5zay9db.aspx

params关键字允许您指定采用可变数量参数的方法参数。

您可以发送以逗号分隔的参数声明中指定类型的参数列表,或者指定类型的参数数组。 你也可以不发送任何参数。

在方法声明中的params关键字之后不允许使用其他参数,并且在方法声明中只允许使用一个params关键字。“

这应该是

 void printReport(String header, params int[] numbers) 

我相信你的意思是params

 public void printReport(string header, params int[] list) { Console.WriteLine(header); for (int i = 0 ; i < list.Length; i++) { Console.WriteLine(list[i]); } Console.WriteLine(); } 

您可以使用params关键字声明一种方法来获取可变数量的参数。 就像在Java中使用...一样,这将为您提供一个数组,让您使用可变数量的参数调用metod: http : //msdn.microsoft.com/en-us/library/w5zay9db( v = vs 0.71)的.aspx