是否有任何方法可以将数字转换为纯Groovy中的字符串,或者将数字和字符串连接到字符串。 几乎似乎你可以。
例如:
def t = [:]
t['a' << 24] = "happy"
println t
println t.get('a24')
第3行将显示类似[a24:happy]
的内容但在第4行中无法检索。将第2行更改为t['a24'] = "happy"
在第3行显示看似相同的打印但它实际上取得了结果第4行。
如果我检查每个类型,它们都返回class java.util.LinkedHashMap
那么,是否有一种纯粹的Groovy方法将数字转换为字符串和/或组合字符串+数字,还是必须用Java完成?
答案 0 :(得分:2)
Groovy通过调用<<
来实现leftShift()
,因此'a' << 24
实际上会调用String.leftShift(Object value)
,这会返回StringBuffer
,而不是String
。< / p>
这意味着您的地图密钥为StringBuffer
,因此调用传递get('a24')
的{{1}}将找不到任何内容。
您可以通过打印类型来看到:
String