我试图使用Groovy文字创建一个Integer vs Integer的映射,即
Map<Integer, Integer> map = [1:10, 2:30, -3:32]
但是,我收到了编译错误。如何使用地图文字指定-3作为键?
答案 0 :(得分:9)
正如groovy docs中所述,任何非字符串Map键都应在圆括号()中指定。
所以你可以按照下面的方式创建地图
Map sampleMap = [:]
sampleMap << [(1): 3]
您可以在我们正常访问时访问此地图键值。
如下所示
println sampleMap[1]
输出
3
我们甚至可以将变量作为关键
String mapKey = "firstKey"
sampleMap << [ (mapKey) : 5]
println sampleMap[mapKey]
输出
5