我在想如何在Java中使用...
的参数。例如:参数中的3个点是什么?/什么是可变参数(...)参数?
public void method1(boolean... arguments)
{
//...
}
这就像是一个array
?我应该如何访问参数?
我在想如何在Java中使用...
的参数。例如:参数中的3个点是什么?/什么是可变参数(...)参数?
public void method1(boolean... arguments)
{
//...
}
这就像是一个array
?我应该如何访问参数?
它被称为Variable arguments或简称var-args,在Java 1.5中引入。 优点是您可以在调用方法时传递任意数量的参数。
例如:
public void method1(boolean... arguments) throws Exception {
for(boolean b: arguments){ // iterate over the var-args to get the arguments.
System.out.println(b);
}
}
上述方法可以接受所有低于方法调用。
method1(true);
method1(true, false);
method1(true, false, false);
为了改善你的答案,你可以添加关于如何获得传递值的信息:) – Pshemo
@Pshemo刚刚添加它。 :) – PermGenError
根据其他答案,这是一个“varargs”参数。这是一个数组。
很多人不知道的是很重要的两点:
method1();
许多人认为如果不指定任何参数,它将为空,但无效检查是不必要的。
可以力空要通过调用它像这样通过:
method1((boolean[])null);
但我说,如果有人这样做,让它爆炸。
它是一个数组,你可以像变量名为'arguments'的数组那样访问它。 – jlordo
@jlordo我认为它在运行时转换为数组。 :) – PermGenError
键入这个答案花费的时间比尝试自己... – NominSim