在groovy中迭代Map <Map <String,String>,Map <String,String >>

 蘑菇雪雪_585 发布于 2023-02-13 13:37

嗨,我有复杂的结构

 Map, Map> a

我想遍历所有元素。我试过了:

for(Map.Entry, Map> first:firstMap.keySet()) { 
...
}

错误是

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)

如何遍历我的地图?

1 个回答
  • 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
    }
    

    2023-02-13 13:40 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有