使用values-arrays将字典映射到另一个带有值数组的字典?

问题描述 投票:3回答:1

我有一个[String: [SomeObject]?]类型的字典,我想将它映射到相同类型的另一个字典,但在某些情况下从内部数组中删除元素。

如何解决这个问题?如果可以像mapfilterreduce等那样使用swift功能而无需手动迭代和重新创建新词典?

arrays swift dictionary mapping reduce
1个回答
3
投票

假设我们有以下[String:[Int]]:

var dict = ["k1":[-1, -2, 1, 2]]

我们想重新删除字典,删除数组中的所有负面元素:

dict = dict.mapValues { v in v.filter { $0 > 0} }
print(dict) // ["k1":[1,2]]
© www.soinside.com 2019 - 2024. All rights reserved.