web-dev-qa-db-fra.com

Java) notation par points à arguments multiples - Varargs

Je viens d'accepter la notation par points pour la déclaration de méthode avec plusieurs arguments
comme ça:

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

Et en utilisant comme ça

getURLs(url1, url2, url3);

où ces arguments de méthode sont convertis implicitement en URL[] urls

  1. Ai-je bien compris son comportement?
  2. Où est la documentation à cette syntaxe?
  3. À partir de quelle version de JRE (J2ME, J2SE, Dalvik) cette solution est-elle prise en charge?
61
Marek Sebera

Oui, c'est comme ça que ça marche. Les arguments sont automatiquement placés dans un tableau. L'argument "urls" se comporte comme un URL[]. Les varargs sont documentés ici . Ils ont été introduits dans Java 1.5, donc, sont disponibles dans J2SE 1.5+ et tous Android car ils supportent Java = 1,5+ fonctionnalités linguistiques, aucune version de JavaME/J2ME ne la prend en charge.

63
Sean Owen

La syntaxe a été introduite dans Java 5 et s'appelle varargs:

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

12
Russ Hayward