This question already has an answer here:
Map a void (non-returning function) over an array
(1个答案)
两年前关闭。
我试图编写一个函数来向NSAttributedString添加属性。我把字典交给了函数,就像。。。
 tag      attributes
[String : [String : Any]]

然后,这些(标记和属性)将被传递到另一个函数中,以便在给定标记中添加属性。
func addAttributes(attributes: [String: Any], forTag tag: String)

我可以。。。
for (tag, attributes) in dictionary

但有没有一个封闭的方法来做这件事呢?
如果我用平面地图。。。
dictionary.flatMap { addAtritbutes(attributes: $1, insideTag: $0) }

然后它抱怨我没有返回任何东西/使用调用的结果。是否有一个函数允许我在没有警告的情况下执行此操作?
谢谢

最佳答案

你可以使用forEach闭包。

dictionary.forEach {
    addAtritbutes(attributes: $0.value, insideTag: $0.key)
}

关于swift - 关闭集合,不需要返回任何内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41592907/

10-10 18:40