2016-01-17 28 views
-1

我需要知道如何將NSDictionary複製到NSMutableDictionary並更改那裏的值。將NSDictionary複製到NSMutableDictionary

編輯

我需要知道如何修改NSDictionary的數據。我知道

NSDictionary的數據複製到NSMutableDictionary。然後修改數據NSMutableDictionary

+0

在斯威夫特使用本地'Dictionary'類型與' var.' – vadian

+0

這可能很容易查找。 @vadian,不會創建副本,他可能需要NSDictionary/NSMutableDictionary來處理其他事情。 – Knight0fDragon

+0

「字典」默認爲值類型,因此它會進行復制。 – vadian

回答

11
let f : NSDictionary = NSDictionary() 
var g = f.mutableCopy() 
+2

請注意,這不會使字典內的對象的副本,只是引用 – Knight0fDragon

5

你應該使用它的字典初始化初始化的NSMutableDictionary,這裏的操場一個簡單的例子

let myDict:NSDictionary = ["a":1,"b":2] 

let myMutableDict: NSMutableDictionary = NSMutableDictionary(dictionary: myDict) 

myMutableDict["c"] = 3 

myMutableDict["a"] // 1 
myMutableDict["b"] // 2 
myMutableDict["c"] // 3 

或者,你可以聲明斯威夫特字典作爲一個var和變異它,只要你想。

var swiftDictioanry : [String:AnyObject] = ["key":"value","key2":2] 

的AnyObject值類型模仿一個NSDictionary的行爲,如果所有類型的已知它可以聲明,如下所示:

var myNewSwiftDict : [String:String] = ["key":"value","nextKey":"nextValue"] 
相關問題