Множество нот с несколькими аргументами - 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
- Я правильно понял его поведение?
- Где документация для этого синтаксиса?
- С какой версией JRE (J2ME, J2SE, Dalvik) это поддерживается?
Ответы
Ответ 1
Да, так оно и работает. Аргументы автоматически помещаются в массив. Аргумент "urls" ведет себя как a URL[]
. Варгары описаны здесь. Они были представлены в Java 1.5, поэтому доступны в J2SE 1.5+, и все Android, так как поддерживает Java 1.5+. Никакая версия JavaME/J2ME не поддерживает его.
Ответ 2
Синтаксис был введен в Java 5 и называется varargs:
http://download.oracle.com/javase/1,5.0/docs/guide/language/varargs.html