【问题标题】:Using collect closure method to populate a HashMap in groovy使用 collect 闭包方法在 groovy 中填充 HashMap
【发布时间】:2013-11-06 17:43:53
【问题描述】:

我正在尝试从列表中填充地图。这就是我正在做的事情。

itemNoList = [1,2,3,4]
bookMap = [:]
bookMap = itemNoList.collect{ [ (it) : it+1 ] }

当我这样做时,bookMap 变为 ArrayList 类型,现在有一个 HashMap 列表。

bookMap 现在是 [{1=2}, {2=3}, {3=4}, {4=5}],即地图列表。

如何使用collect 方法从 ArrayList 中获取 HashMap?使用each 代替collect 很容易解决此问题,但我只是好奇是否可以使用collect 解决。

【问题讨论】:

    标签: groovy arraylist hashmap closures collect


    【解决方案1】:

    你很幸运! collectEntries 方法处理的工作方式与 collect 类似,但用于 Map!

    groovy:000> itemNoList = [1, 2, 3, 4]
    ===> [1, 2, 3, 4]
    groovy:000> itemNoList.collectEntries { [(it): it+1] }
    ===> {1=2, 2=3, 3=4, 4=5}
    

    【讨论】:

    • 太棒了!这正是我想要的!
    猜你喜欢
    • 1970-01-01
    • 2017-12-30
    • 1970-01-01
    • 2015-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-03
    • 1970-01-01
    相关资源
    最近更新 更多