Object ... args的正确术语

时间:2013-05-21 15:40:52

标签: java methods args

我正在使用Java,并且为方法指定多个args的典型方法是:

public static void someMethod(String[] args)

但是,我已经看过几次,甚至在标准的Java库中。我不知道如何在谈话中提及这一点,并且由于使用了字符,谷歌搜索没有多大帮助。

public static void someMethod(Object... args)

我知道这允许你将一串或多个参数串联到一个方法中,而不必提前知道可能有多少,例如:

someMethod(String arg1, String arg2, String arg3, ... etc

您如何参考此类方法签名设置?我认为这很好,很方便,并希望向其他人解释,但我缺乏如何参考这一点。谢谢。

3 个答案:

答案 0 :(得分:15)

这种表达参数的方式称为 varargs ,并在Java 5中引入 您可以阅读有关他们的更多信息here

答案 1 :(得分:5)

Parameter方法(Object ... args)名为varargs。试试这个link

答案 2 :(得分:5)

正如Keppil和Steve Benett所指出的,这个java特性被称为varargs。

如果我没有弄错的话,Joshua Bloch提到使用varargs会有性能损失,并建议使用varargs方法作为捕获所有接收器。

public static void someMethod(Object arg) {
    // Do something
}

public static void someMethod(Object arg1, Object arg2) {
    // Do something
}

public static void someMethod(Object arg1, Object arg2, Object arg3) {
    // Do something
}

public static void someMethod(Object ... args) {
    // Do something
}