Java 如何在Groovy中定义映射

Java 如何在Groovy中定义映射,java,loops,groovy,map,Java,Loops,Groovy,Map,我想制作一系列贴图,比如map1、map1、map3等等。我想用一个循环来实现这一点。这不起作用: for (i = 1; i++){ def map[ i ] 我如何才能做到这一点?您可以: def listOfMaps = (1..10).collect { [:] } 这将形成一个包含10张地图的列表 如果这不是你想要的,你必须解释你想做什么;-) 在groovy中,需要任意数量的键/值对。此外,for循环缺少一个子句。试试这个: maps = [] // A list wh

我想制作一系列贴图,比如
map1、map1、map3等等。
我想用一个循环来实现这一点。这不起作用:

for (i = 1; i++){

    def map[ i ]
我如何才能做到这一点?

您可以:

def listOfMaps = (1..10).collect { [:] }
这将形成一个包含10张地图的列表

如果这不是你想要的,你必须解释你想做什么;-)

在groovy中,需要任意数量的键/值对。此外,for循环缺少一个子句。试试这个:

maps = [] // A list which will store maps.
for (i=0; i<10; i++) {
  maps[i] = [i:i]
}
maps[0] // => [i:0]
maps[1] // => [i:1] ...
maps[9] // => [i:9]
maps=[]//将存储地图的列表。
for(i=0;i[i:0]
映射[1]/=>[i:1]。。。
地图[9]/=>[i:9]

“地图”在本例中是一个列表,而不是一个数组。谢谢,这正是我想要的!但更深入地说,我想要多个“地图”,比如“存储地图的数组”你在上面定义了…如何做到这一点?而且,没有键的地图是完全有效的。短语“…任意数量的键/值对…”似乎暗示你必须至少有一个…但这可能是因为我过于挑剔;-)为什么这篇文章获得-3票?因为缺少条款?