Java多参数点符号 - Varargs

Mar*_*era 61 java const constants

我刚刚承认了带有多个参数的方法声明的点表示法,
如下所示:

public function getURLs(URL... urls){
    for(int i = 0; i < urls.length; i++){
        // walk through array of arguments
    }
}
Run Code Online (Sandbox Code Playgroud)

并使用这样的

getURLs(url1, url2, url3);
Run Code Online (Sandbox Code Playgroud)

这些方法参数被隐式转换为 URL[] urls

  1. 我是否理解其行为?
  2. 这种语法的文档在哪里?
  3. 从哪个版本的JRE(J2ME,J2SE,Dalvik)支持?

Sea*_*wen 63

是的,这就是它的工作原理.参数自动放入数组中.参数"urls"的行为类似于URL[].这里记录了Varargs.它们是在Java 1.5中引入的,因此,它们可以在J2SE 1.5+和所有Android中使用,因为它支持Java 1.5+语言功能.没有JavaME/J2ME版本支持它.