2011-01-23 13 views
6

Estoy tratando de averiguar algún código de Java. me encontré con algo que no he visto antes en una cabecera del métodoCadena ... <varname> lo que hace Cadena ... significa

private static object [] methodName(NodeList nodes, String... Names) 

¿Cuál es el operador ...?

Gracias y lo siento hicieron algunas búsquedas no podían encontrar en otro lugar

Respuesta

8

Esa es una declaración varargs.

Se dice que puede llamar a ese método con 0 o más argumentos de cadena como argumentos finales. En lugar de:

write(new String[]{"A","B","C"}); 

puede utilizar

write("A", "B", "C"); 

Así que cada cadena es un argumento diferente. Luego puede iterar a través de ellos, p.

public void write(String... records) { 
    for (String record: records) 
     System.out.println(record); 
} 

Más ejemplos here.

+0

cómo difiere esto de pasar una matriz de cadenas. ¿Es que una matriz de cadenas no puede llamar al método con 0 cadenas? – Peter

+0

Ver la aclaración anterior –

+0

Gracias excusa mi Qs Soy un poco novato – Peter

Cuestiones relacionadas