Dictionary 如何将多个值推送到地图
我必须将多个值推送到地图上,并在我尝试的以下位置: 我有一个ename='Test1',我必须检索他的所有详细信息。因此,我进行了查询以从empname获取详细信息,结果如下:Dictionary 如何将多个值推送到地图,dictionary,groovy,Dictionary,Groovy,我必须将多个值推送到地图上,并在我尝试的以下位置: 我有一个ename='Test1',我必须检索他的所有详细信息。因此,我进行了查询以从empname获取详细信息,结果如下: String ename='Test1' Map<String, Map<String, Object>> empData = new HashMap<String, HashMap<String, Object>>() def empDeta
String ename='Test1'
Map<String, Map<String, Object>> empData = new HashMap<String,
HashMap<String, Object>>()
def empDetails=[[job:'Dev',exp:2],[job:'QA',exp:4]]
Map<String, Object> empColl = new HashMap<String, Object>()
empDetails.eachWithIndex{itr,index-> //looping through empDetails
empColl.put("job",itr.job);
empColl.put("exp",itr.exp);
}
empData.put(ename,empColl);
println empData; //I see only one value in the map
返回
[Test1:[[job:Dev, exp:2], [job:QA, exp:4]]]
返回
[Test1:[[job:Dev, exp:2], [job:QA, exp:4]]]
您有
Map
,但正如预期的结果,您希望Map
@daggett-我根据您的建议进行了修改,但结果看起来相同:Map empData=new HashMap()确定。但是您必须更改代码,而不仅仅是类型定义…顺便说一句,empData=[ename:empDetails]buildsresult@daggett-empData=[ename:empDetails]我没有看到ename,即“Test1”。您有Map
,但作为预期结果,您希望Map
@daggett-我根据您的建议进行了修改,但结果看起来相同:Map empData=new HashMap()确定。但是您必须更改代码,而不仅仅是类型定义…顺便说一句,empData=[ename:empDetails]buildsresult@daggett-empData=[ename:empDetails]我没有看到ename,即“Test1”。def empData=[(ename):empDetails]
更好,因为它避免了使用模板字符串作为键def empData=[(ename):empDetails]
更好,因为它避免了使用模板字符串作为键
[Test1:[[job:Dev, exp:2], [job:QA, exp:4]]]