Java变量函数参数

时间:2010-03-30 06:12:03

标签: java function variables parameters

如何在Java中复制此功能?

在C#中,您可以使用params关键字为函数指定变量参数列表。

你是如何用Java做的?

或者您是否必须采取多次重载?

4 个答案:

答案 0 :(得分:9)

C#代码:

double Average(params double[] nums) {
  var sum = 0.0;
  foreach(var num in nums) 
    sum += num;
  return sum / nums.Length;
}

等效的Java代码:

double average(double... nums) {
  double sum = 0.0;
  for(double num : nums) 
    sum += num;
  return sum / nums.length;
}

此功能称为varargs。您可以阅读更多相关信息here

答案 1 :(得分:3)

可变参数函数(Java语言中的“varargs”)的参数作为数组公开给Java函数体。 Wikipedia entry中的示例完美地说明了这一点:

public static void printSpaced(Object... objects) {
   for (Object o : objects)
     System.out.print(o + " ");
 }

 // Can be used to print:
 printSpaced(1, 2, "three");

答案 2 :(得分:2)

您可以使用...。例如:

public void foo(int... args) {
  for (int arg : args) {
    // do something
  }
}

答案 3 :(得分:0)

在Java中,您可以使用varargs。但这仅适用于1.5或更新版本。