Ich möchte ein unveränderliches Wörterbuch aus einem Array von Strukturen erstellen. Gibt es eine Möglichkeit, dies direkt in der Sprache zu tun? Ich weiß, dass es über ein temporäres veränderbares Wörterbuch erfolgen kann.Unveränderliche Wörterbuchinitialisierung in swift
class Foo {
let key: Int
// ... other stuff
init(key:Int){ self.key = key }
}
let listOfFoos : [Foo] = []
var dict = [Int:Foo]()
for foo in listOfFoos { dict[foo.key] = foo }
let immutableDict = dict
oder durch NSDictionary verwenden, wenn Foo ein Objekt
let immutableDict2 : [Int:Foo] = NSDictionary(objects:listOfFoos, forKeys: listOfFoos.map{$0.key}) as! [Int:Foo]
Soweit ich weiß, kann es nicht getan werden. Umgehung: Erstellen Sie eine Funktion zum Zurückgeben eines Wörterbuchs. Erstellen Sie im Wörterbuch ein veränderbares Wörterbuch und geben Sie es dann zurück – user1046037