6

在查看 GStrings 中变量替换的示例时,我注意到两种不同的语法。这可以在这里看到:Groovy 模板

这有一个例子:

def text = 'Dear "$firstname $lastname",\nSo nice to meet you in <% print city %>.\nSee you in ${month},\n${signed}'

看起来 ${variable} 在你有一个表达式时更常用,但是当你只有一个变量时使用 $variable,但即使在这里他们也将它与 $firstname 和 ${month} 混合使用。当您只有一个变量而不是表达式时,是否有理由以一种或另一种方式进行操作,或者这无关紧要?

4

1 回答 1

14

没关系...

"${name.toUpperCase()}"正如你所说,如果你有一个像, "${number}th"or的表达式"${list[0]}",那么它必须在大括号内,但两者"${name}""$name"是相同的。

事实上,只要它是简单的属性访问,您就可以省略大括号,即:"Hello $person.username"

可以说添加大括号可以使您的字符串模板更易于阅读,但这是个人喜好。

于 2013-06-14T16:08:35.610 回答