我想知道...
Java 中的参数是如何工作的。例如:
public void method1(boolean... arguments)
{
//...
}
这像array
吗?我应该如何访问参数?
我想知道...
Java 中的参数是如何工作的。例如:
public void method1(boolean... arguments)
{
//...
}
这像array
吗?我应该如何访问参数?
它称为变量参数或简称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);
根据其他答案,它是一个“可变参数”参数。这是一个数组。
很多人没有意识到的是两个重要的点:
method1();
许多人认为如果您不指定参数,它将为 null,但 null 检查是不必要的。
您可以通过像这样调用它来强制传递一个空值:
method1((boolean[])null);
但我说如果有人这样做,就让它爆炸吧。