Я хочу объединить 2 массива.
arr1 = ["a", "b", "c"]
arr2 = ["1", "2", "3"]
Я хочу, чтобы это было:
"a" = "1"
"b" = "2"
"c" = "3"
поэтому, если я вызываю значение «1» в label1, это означает, что значение «a» также вызывается в label2, как словарь или индекс.
Попробуйте этот код: - пусть arr1 = ["1", "2", "3"] пусть arr2 = ["A", "B", "C"] пусть comboDict = NSMutableDictionary() для я в 0..< arr1.count{combinedDict.addEntries(from: [arr2[i]: arr1[i]])} print(combinedDict)
Просто так:
let arr1 = ["a", "b", "c"]
let arr2 = ["1", "2", "3"]
let dictionary = Dictionary(uniqueKeysWithValues: zip(arr1, arr2))
Это однострочный код
let dict = zip(["a", "b", "c"], ["1", "2", "3"]).compactMap{[$0.0:$0.1]}.reduce([:]) { $0.merging($1) { (current, _) in current } }
print(dict)
["a": "1", "b": "2", "c": "3"]
Я предлагаю вам использовать ответ пользователь 28434, который более эффективен, чем мой. Я сохраняю свой ответ как альтернативное второе лучшее решение
что делать, если размер массива отличается?