gsa*_*lis 30 groovy string-interpolation
在Groovy中,我有一个定义的多行字符串,'''其中我需要使用插值来替换其他一些变量.
尽管我付出了很多努力,但我无法让它发挥作用 - 我认为我需要逃避一些我缺失的东西.
这是一些示例代码:
def cretanFood = "Dakos"
def mexicanFood = "Tacos"
def bestRestaurant = '''
${mexicanFood} & ${cretanFood}
'''
print bestRestaurant
Run Code Online (Sandbox Code Playgroud)
目前,这输出:
${mexicanFood} & ${cretanFood}
Run Code Online (Sandbox Code Playgroud)
虽然我很清楚地期望:
Tacos & Dakos
Run Code Online (Sandbox Code Playgroud)
(注意 - 我不想连接字符串)
Abh*_*ute 43
而不是'''用于GString或multi-line string使用"""
def cretanFood = "Dakos"
def mexicanFood = "Tacos"
def bestRestaurant = """${mexicanFood} & ${cretanFood}"""
print bestRestaurant?
Run Code Online (Sandbox Code Playgroud)
GString封闭在'''将无法解决placeholder - $.您可以在标题字符串 和 字符串汇总表块下的Groovy文档中找到更多详细信息.
aal*_*ray 40
在Groovy中,单引号用于创建不可变的字符串,就像Java使用双引号一样.
当您在Groovy中使用双引号时,您向运行时指示您打算创建可变String或Groovy String(简称GString).您可以对可变字符串使用变量插值,也可以将其保留为常规纯Java字符串.
此行为扩展到多行String版本; 三重单引号的使用创建一个不可变的多行字符串,而三重双引号创建一个Groovy字符串.
| 归档时间: |
|
| 查看次数: |
21719 次 |
| 最近记录: |