libreria - groovy script
¿Cómo enumero todas las variables definidas en una secuencia de comandos groovy (2)
Bueno, si está usando un script simple (donde no usa la palabra clave "def"), las variables que defina se almacenarán en el enlace y podrá obtenerlas de la siguiente manera:
foo = "abc"
bar = "def"
if (true) {
baz = "ghi"
this.binding.variables.each {k,v -> println "$k = $v"}
}
Huellas dactilares:
foo = abc
baz = ghi
args = {}
bar = def
No conozco una manera fácil de enumerar a través de las variables definidas con la palabra clave "def", pero estaré observando esta pregunta con interés para ver si alguien más sabe cómo hacerlo.
Tengo una secuencia de comandos groovy con un número desconocido de variables en contexto en tiempo de ejecución, ¿cómo las encuentro todas e imprimo el nombre y el valor de cada una?
En realidad, la respuesta de Ted también funcionará para las variables definidas.
def foo = "abc" def bar = "def" if (true) { baz = "ghi" this.binding.variables.each {k,v -> println "$k = $v"} }
rendimientos
baz = ghi __ = [null, null, null] foo = abc _ = null bar = def
No estoy seguro de lo que significan las variables _, pero estoy seguro de que puedes evitarlas.