我以前见过它的一个例子,但我从来没有找到任何好的参考资料来处理它。我知道可以传递几个参数,例如,通过将方法定义为
public void aMethod(int...a)
但我不知道有什么比这更重要的了。我见过一个例子,它返回了通过的平均值。
这是传递参数的过时方式吗?使用它甚至可以接受吗?这样做时的语法究竟是什么?
(一些参考资料会很棒)
答案 0 :(得分:12)
它被称为varargs(来自C语法)。有关概述,请参阅Sun's varargs guide,并使用此JDC Tech Tip了解相关信息。它不是过时的;它被作为一个功能请求放入,因为之前你被迫创建一个数组或列表,这对于支持像C的printf来说真的很难看。
public void myMethod(String... args) {
for (String aString:args) {
System.out.println(aString);
}
}
答案 1 :(得分:-1)
您必须将ints
的列表传递给方法才能执行此操作,如下所示:
public void aMethod(int[] list)
或者这个:
public void aMethod(ArrayList<int> list)
如果Java有类似C#的params
关键字,那就不错了。