Im Beispiel unten versuche ich, eine multidimensional NSMutableDictionary
zu ändern. Kann jemand bitte den korrekten Weg erklären, ein mehrdimensionales veränderbares Wörterbuch zu ändern?Swift - Aktualisieren von Werten eines multidimensionalen NSMutableDictionary
import Cocoa
let player = "Player 1"
let characterName = "Magic Glop"
let strength = 23
let defense = 220
let type = "fire"
var example: NSMutableDictionary = ["id":1,
"player":player,
"characters":
["character-name":characterName,
"stats":
["strength":strength,
"defense":defense,
"type":type
]
]
]
// My first attempt to update character-name.
example["characters"]!["character-name"] = "New Name"
// Error: Cannot assign to immutable expression of type 'AnyObject?!'
// Next I tried updating the value of "characters">"stats">"type" with .setObject
example["characters"]!["stats"]!!.setObject("water", forKey: "type")
// Documentation: .setObject adds a given key-value pair to the dictionary. If the key already exists in the dictionary, the object takes its place.
// Error: Execution was interrupted, reason: EXC_BAD INSTRUCTION (code=EXC_i386_INVOP, suncode=0x0).
Vielen Dank im Voraus!