Groovy学习笔记——Map的key

请看如下代码:
def a = 'b'
def m = [a:a]
println m // 输出[a:b]

输出的是[a:b]而不是[b:b],这是因为Groovy把Map的key都当作字符串处理了,即使没有加上单引号或者双引号。所以这里Map的key“a”并不是看作变量a,而是字符串"a"。
要让这里的a被看作变量,需要加上圆括号或者使用GString,如下所示:
m = [(a):'a']
println m // 输出[b:a]

m = ["$a":a]
println m // 输出[b:b]

你可能感兴趣的:(java,groovy)