Ich habe eine einfache Funktion, die ein Wörterbuch von zwei anderen nach dem letzten kompiliert. Der Compiler zeigt keine Fehler, aber nach der Ausführung ist resultDict
leer. Im Debug haben alle Vars counter
, type.1
und korrekte Nicht-Null-Werte.Auffüllen Wörterbuch in Swift
func compileBaseFromCSV(original: [Int:[String]], headers: [Int:String]) -> [Int:[String:[String]]] {
var resultDict = [Int:[String:[String]]]()
var tempDict = [String]()
var counter = 0
for type in headers {
for object in original {
tempDict.append(object.1[type.0])
}
resultDict[counter]?[type.1] = tempDict
counter += 1
}
print(resultDict)
return resultDict
}
Was ist falsch an diesem Code? Vielen Dank!
Den Array-Enumerator für Wörterbücher nicht missbrauchen (obwohl es funktioniert, weil das Wörterbuch durch ein Tupel dargestellt wird). Der empfohlene Enumerator ist 'for (key, value) im Dictionary {}' – vadian