Java несколько аргументов точечная нотация-Varargs


Я только что подтвердил точечную нотацию для объявления метода с несколькими аргументами
вот так:

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

и используя вот так

getURLs(url1, url2, url3);

где эти аргументы метода неявно преобразован в URL[] urls

  1. правильно ли я понял его поведение?
  2. где документация к этому синтаксису?
  3. из какой версии JRE (J2ME,J2SE,Dalvik) это поддерживается?
2 57

2 ответа:

Да, вот как это работает. Аргументы автоматически помещаются в массив. Аргумент "urls" ведет себя как URL[]. С varargs описаны здесь. Они были введены в Java 1.5, поэтому доступны в J2SE 1.5+, и все Android, так как он поддерживает функции языка Java 1.5+. Никакая версия JavaME / J2ME не поддерживает его.

синтаксис был введен в Java 5 и называется varargs:

http://download.oracle.com/javase/1,5.0/docs/guide/language/varargs.html