groovy
Interpolation de chaîne
Recherche…
Syntaxe
- $
- $ {}
- $ {->}
De base
def str = 'nice'
assert "Groovy is $str" == 'Groovy is nice'
Expression en pointillé
def arg = [phrase: 'interpolated']
assert "This is $arg.phrase" == 'This is interpolated'
Expression désagréable
def str = 'old'
def interpolated = "I am the ${str} value"
assert interpolated == 'I am the old value'
str = 'new'
assert interpolated == 'I am the old value'
Expression paresseuse
Nous pouvons avoir une interpolation paresseuse dans les chaînes. Ceci est différent de l'interpolation normale car le GString peut potentiellement avoir des valeurs différentes, selon la fermeture, chaque fois qu'il est converti en chaîne.
def str = 'old'
def interpolated = "I am the ${ -> str} value"
assert interpolated == 'I am the old value'
str = 'new'
assert interpolated == 'I am the new value'
Expression
def str = 'dsl'
def interpolated = "Groovy ${str.length() + 1} easy ${str.toUpperCase()}"
assert interpolated == 'Groovy 4 easy DSL'
str = 'Domain specific language'
assert interpolated == 'Groovy 4 easy DSL'
Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow