[Java 5.0] Funciones con número de parámetros variable

3231 vistas

La funcionalidad varargs permite pasar múltiples parámetros a los métodos. Basta con escribir ... después del tipo del parámetro.

Veamos un ejemplo:



java
  1. public void metodo (String... args) {
  2.   //
  3. }



Este método aceptará cualquier número de strings.

Al interior del método, el parámetro args es una tabla que contiene los diferentes parámetros pasados al método. AsÃ, este método se puede usar de la siguiente manera:



java
  1. // con un parámetro:
  2. metodo ("param1");
  3.  
  4. // con varios parámetros:
  5. metodo ("param1", "param2", "param3");
  6.  
  7. // sin parámetros:
  8. metodo ();



En realidad no es más que una nueva manera de declarar un método con una tabla pasada por parámetro. Realmente, para el compilador, esta declaración es la misma que la de un método con una tabla de String pasada por parámetro. Es decir, los ejemplos anteriores correspondrian a lo siguiente:



java
  1. // con un parámetro:
  2. metodo ( new String[]{"param1"} );
  3.  
  4. // con varios parámetros:
  5. metodo ( new String[]{"param1", "param2", "param3"} );
  6.  
  7. // sin parámetros:
  8. metodo ( new String[]{} );