как использовать содержит в dict в Swift - PullRequest
0 голосов
/ 30 сентября 2018

Я написал функцию для слияния двух диктов, где второй диктат покрывает первый дикт, где у них одни и те же ключи

 func merging(_ dict1: [String: String],with dict2: [String: String]) ->
[String: String]{      
    var toreturn : [String : String] = dict1      
    for (key,value) in dict2{    
        toreturn[key] = value
    }   
    return toreturn}

он работает со всеми моими тестовыми примерами, затем я не смог написать "тупее""Версия этого метода с содержанием:

func merging(_ dict1: [String: String],with dict2: [String: String]) ->
[String: String]{
    var toreturn : [String : String] = dict2
    for (key,value) in dict1{
        if(toreturn.contains(where: [key, value]))
    }
    return toreturn}

Кто-нибудь может мне помочь с переписыванием функции с помощью метода содержимого?

1 Ответ

0 голосов
/ 30 сентября 2018

Вам не нужна новая функция для слияния со словарями в Swift, согласно Документация Apple , вам нужно использовать только пример метода слияния словарей:

let dict1 : [String: String] = ["a" : "1" , "b" : "2"]
let dict2 : [String: String] = ["c" : "3" , "d" : "4"]

let newDict = dict1.merging(dict2) { (current, _) -> String in
    current
}

//newDict values will be : ["a" : "1", "b" : "2", "c" : "3", "d" : "4"]
...