嗨,我有复杂的结构
Map
我想遍历所有元素。我试过了:
for(Map.Entry
错误是
Cannot cast object '{key1=value1, key2=value2, key3=value3, key4=value4}' with class 'java.util.LinkedHashMap' to class 'java.util.Map$Entry' due to: groovy.lang.GroovyRuntimeException: Could not find matching constructor for: java.util.Map$Entry(java.util.LinkedHashMap)
如何遍历我的地图?
该keySet()
只返回它的钥匙,因此它是一个列表Map<String, String>
。如果要遍历它Map.Entry
,请删除.keySet()
:
for (Map.Entry<Map<String, String>, Map<String, String>> entry : firstMap) { println "entry=$entry" }
其他循环选项:
// iterate with two arguments firstMap.each { Map<String, String> key, Map<String, String> value -> println "key=$key, value=$value" } // iterate through entries firstMap.each { Map.Entry<Map<String, String>, Map<String, String>> entry -> println "entry=$entry" } // untyped for (entry in firstMap) { println entry }