扩展swift中键:字符串值:数组的字典
如何扩展扩展swift中键:字符串值:数组的字典,swift,dictionary,protocols,extension-methods,Swift,Dictionary,Protocols,Extension Methods,如何扩展[String:[Double]]类型的Swift字典 扩展字典时,值要符合的协议/类类型是什么 [p.S:在此扩展中,我希望返回其值数组包含发送到函数的特定元素(Double)的所有键。]您可以使用筛选器执行以下操作: let dictData = ["a":[1.0,2.0,3.0], "b":[1.0,112.0,3.0], "c":[7.0,12.0,3.0]] let filterData = dictData.
[String:[Double]]
类型的Swift字典
扩展字典时,值要符合的协议/类类型是什么
[p.S:在此扩展中,我希望返回其值数组包含发送到函数的特定元素(Double)的所有键。]您可以使用筛选器执行以下操作:
let dictData = ["a":[1.0,2.0,3.0],
"b":[1.0,112.0,3.0],
"c":[7.0,12.0,3.0]]
let filterData = dictData.filter({$0.value.contains(1)})
print(filterData.keys) //output: ["a", "b"]
您可以按如下方式对该阵列进行itrate:
for keys in filterData.keys.makeIterator() {
print(keys)
}
filterData.keys.first
或者,您可以像这样直接访问:
for keys in filterData.keys.makeIterator() {
print(keys)
}
filterData.keys.first
字典有两个通用元素
Key
和Value
,在创建扩展时需要约束它们
您可以这样做:
public extension Dictionary where Key == String, Value == [Double] { }
那么,您想筛选字典以查找包含特定双精度值的键吗?欢迎访问stackoverflow.com。请花些时间阅读,特别是命名和。也请阅读。最后,请阅读。是的,我知道如何找到钥匙,但主要是我需要知道如何扩展这种类型的字典。是的,这是有效的!!但我也想知道如何扩展这种类型的字典,主要是。是的,处理好了。谢谢你的更新:)谢谢,这很好用@如果你找到了一个解决你问题的答案,试着记住把它标记为被接受的答案!您将获得一个小的声誉提升,以及帮助其他读者与同样的问题得到解决更快!对不起,我忘了。