gpt4 book ai didi

groovy - 仅从数组中获取唯一值

转载 作者:行者123 更新时间:2023-12-01 10:19:24 27 4
gpt4 key购买 nike

我有一个数组数组,我只需要从该数组中获取唯一值 empnamedept,而不依赖于 hoursWorked

def data = [[empname:'Test1',dept:10,hoursWorked:6],            
[empname:'Test1',dept:10,hoursWorked:2],
[empname:'Test2',dept:10,hoursWorked:10]] as Set

println data;

我使用了 Set,因此它只包含唯一值。由于 hoursWorked 不同,我得到了所有三个值。

我想要的预期结果是:

[[empname:Test1, dept:10],[empname:Test2, dept:10]]

最佳答案

您可以将 map 列表转换为一组 map ,但首先,您需要将列表转换为仅包含您感兴趣的 map 条目。考虑以下示例:

data.collect { [empname: it.empname, dept: it.dept] }.toSet()

在第一次运行中,它将每个映射转换为仅包含两个键的映射,然后,它将列表转换为集合,因此它仅包含唯一的 empname 对和部门

它产生预期的输出:

[[empname:Test1, dept:10], [empname:Test2, dept:10]]

关于groovy - 仅从数组中获取唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55657221/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com