Groovy 2d数组

时间:2015-06-08 08:00:33

标签: groovy

我想要一个像这样的集合

[item1: [123, 123, 2321], item2: [1231,1222,1313]]

我尝试使用像[ : [] ]这样的地图,但这是不允许的。如何实现以下结构。我想使用字符串作为键添加元素:

content['item1'] << 123

2 个答案:

答案 0 :(得分:2)

一切正常,您使用的是Map - 而不是2D数组:

def m = [item1: [123, 123, 2321], item2: [1231,1222,1313]]
m['item1'] << 1234
println(m)

如果您需要声明,可以通过以下方式完成:

Map<String, List<Integer>> m = [:]

然而它会在运行时被删除。

答案 1 :(得分:2)

我不确定我是否正确地提出了您的问题但是如果您想知道如何使用Array那就好了,就像在Java中一样

声明数组使用

String [][] array

初始化数组

array = new String [1][2] // matrix 1x2

读取/写入此类数组

array [0][0] = 'Foo'
array [0][1] = 'Bar'

不幸的是(至少据我所知)声明/ init Java方式在Groovy中不起作用

String [][] a = new String [][]{{'Hi','Hello'}} // won't compile in Groovy