Al igual que Java, en Groovy puedes introducir valores al ejecutar tu programa. Esto se conoce como paso de parámetros.
Vamos a ver en un ejemplo cómo pasar un único valor a un script. Tenemos el siguiente código:
if(args){
println "Hola "+args[0]
} else{
println "no introduciste nada"
}
Vemos que solo accedemos a la posición 0 del array de argumentos o args. Esto significa que solo recuperaremos el valor que se encuentre en dicha posición.
Compilamos:
groovyc miScript.groovy
Ejecutamos:
groovy miScript.groovy Enrique
El parámetro que le enviamos («Enrique») por default es de tipo String.
Ahora si queremos enviar más de un parámetro necesitamos hacerlo mediante el uso del método each(). En each ejecutaremos un closure y el iterador del closure será el que contenga todos los valores que hayan venido como parámetros al programa.
if(args){
args.each(){ it->
println "Hola $it"
}
}else{
println "no introduciste nada"
}
groovy miScript.groovy Enrique Magda Camila Juan
el resultado será:
Hola Enrique Hola Magda Hola Camila Hola Juan