2011-09-24 29 views
56

acabo reconoció la notación de punto de declaración de método con múltiples argumentos
como esto:Java múltiples argumentos de puntos notación - Varargs

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

Y usando como esto

getURLs(url1, url2, url3); 

donde los argumentos del método se convierten implícitamente en URL[] urls

  1. ¿Entendí su comportamiento correctamente?
  2. ¿Dónde está la documentación de esta sintaxis?
  3. ¿De qué versión de JRE (J2ME, J2SE, Dalvik) es compatible?

Respuesta

59

Sí, así es como funciona. Los argumentos se ponen automáticamente en una matriz. El argumento "urls" se comporta como un URL[]. Varargs are documented here. Se introdujeron en Java 1.5, por lo tanto, están disponibles en J2SE 1.5+, y en todos los de Android, ya que son compatibles con las características del lenguaje Java 1.5+. Ninguna versión de JavaME/J2ME lo admite.

+0

gracias por la respuesta compleja Sean. –

+0

¿esta matriz conserva la orden? – kommradHomer

+0

Por supuesto, no sería de mucha utilidad si los argumentos se pasaran en un orden arbitrario –

Cuestiones relacionadas