java什么是对象。。。意思是
Possible Duplicates:
What does “…” mean in Java?
Java array argument “declaration” syntax
有人能确认我在下面的方法调用中看到的Object...
参数是否正确吗:
public static void setValues(PreparedStatement preparedStatement, Object... values)
throws SQLException
{
for (int i = 0; i < values.length; i++) {
preparedStatement.setObject(i + 1, values[i]);
}
}
作为类型为Object的数组?我不记得以前在Java中见过...
# 1 楼答案
您看到的是一个varargs参数。关于它的文件可以在here找到
Varargs相当于一个对象数组,但是有语法上的糖分使调用该方法更容易。因此,旧方法是(此代码来自上面的文档):
使用varargs,您可以编写:
注意,自动装箱有助于将int 7转换为
new Integer(7)
,而无需显式声明它# 2 楼答案
来自Java教程(Passing Information to a Method or Constructor):
# 3 楼答案
它相当于
Object[]
,但允许调用方一次只指定一个值作为参数,编译器将创建一个数组。所以这个电话:相当于
有关更多信息,请参见documentation for the varargs feature(在Java5中引入)