6

可能重复:
此方法签名中的省略号 (...) 是什么?
java:如何创建一个支持任意数量参数的函数?

好吧,我正在尝试找出一些示例,并且在 main 方法中找到了这种用于参数的数组定义。这个“...”有什么特别之处,普通的 String[] args 有什么区别?

谢谢

4

4 回答 4

7

这是 Java 5 中用于可变长度参数列表的符号。它大致相当于一个字符串数组,但允许您传递自动组合成一个数组的各个参数。

void mymethod(String... a) {
    for (String s : a) {
        ...
    }
}

mymethod("quick", "brown", "fox");

这仅在您计划从程序中调用方法时才有意义,因此我不明白为什么需要在 main() 中使用这种语法。但是,它会起作用。

于 2012-05-03T01:25:10.640 回答
3

省略号 (...) 是可变参数。当您要创建具有任意数量参数的方法时,可以使用它们。Oracle 在这里详细解释了可变参数的工作原理。

于 2012-05-03T01:27:31.467 回答
2

这称为可变参数,这意味着可以传递该类型 ( String) 的任意数量的参数。

1.它应该在最终位置

2.将作为数组处理

于 2012-05-03T02:20:50.523 回答
1

... 用于可变参数。

例如

公共无效我的方法(对象...参数){}

params 变量是可选的,被视为对象的可为空数组。

于 2012-05-03T03:12:13.117 回答