如何从快速字典数组中获取所选键的数组的值及其复杂性

让我说以下答复。我想从以下操作中了解两件事。

1。)如何迅速使用高阶函数改进/优化以下代码。

2。)还想知道代码的当前复杂度以及您可能建议的任何优化代码的复杂度。

在以下响应中,我只想按keysToBeChecked中所述检查某些键的值,对于该特定键,我需要执行操作。操作完成后,我想向响应中添加一个新的key(key6),如下所示。以下操作对我来说很好,这就是我想要做的。我正在寻找上面提到的两件事

sum
var response = [["key1": 1,"key2": 0,"name": "John","key3": 1,"key4": 1,"place": "Newyork","key5": 0],["key1": 0,"key2": 1,"name": "Mike","key4": 0,"place": "California","key5": 1],["key1": 1,"key3": 0,"place": "Boston","key5": 1]]
ingkao84 回答:如何从快速字典数组中获取所选键的数组的值及其复杂性

对于高阶功能,您可以尝试

let result = response.map { (dict) -> [String:Any] in
    var filteredDict = [String:Any]()
    dict.forEach({ (key,value) in
        if keysToBeChecked.contains(key) {
            filteredDict[key] = value
            if (value as? Int) == 1 {
                filteredDict["key6"] = "output"
            }
        }
    })
    return filteredDict
}
本文链接:https://www.f2er.com/3161162.html

大家都在问