У меня есть скрипт Groovy. В Java через привязку я предоставляю:
binding.put( 'a','Hello')
Я запускаю скрипт через GroovyShell и делаю:
print "${a}"
будет печатать
Hello
Мне нужно print "${a}"
, где a
может быть любым текстом в результате вызова другого метода. Просто напечатайте переменную, имя которой определяется во время выполнения. Как это возможно ?
Еще один пример для пояснения:
binding.put( 'm','n')
binding.put( 'n','p')
Распечатать ???? и вывод должен быть 'p'
, где 'm'
известно в скрипте, но не 'n'
print ????
. - person Will   schedule 22.07.2014groovysh
вы можете получить доступ к контексту черезthis
. так что это работает вgroovysh
:m='n'; n='p'; "${this."$m"}"
- person cfrick   schedule 22.07.2014