我有一个简单的字典,其定义如下:
var dict : NSDictionary = [ 1 : "abc", 2 : "cde"]
现在我想在这个字典中添加一个元素:3 : "efg"
3 : "efg"
我怎样才能追加3 : "efg"到这个现有的字典中?
你正在使用NSDictionary. 除非您出于某种原因明确需要它是那种类型,否则我建议使用 Swift 字典。
NSDictionary
您可以将 Swift 字典传递给任何期望的函数NSDictionary,而无需任何额外工作,因为它们Dictionary<>之间NSDictionary可以无缝连接。原生 Swift 方式的优点是字典使用泛型类型,所以如果你定义它Int作为键和String值,你就不会错误地使用不同类型的键和值。(编译器代表您检查类型。)
Dictionary<>
Int
String
根据我在您的代码中看到的内容,您的字典Int用作键和String值。要创建实例并稍后添加项目,您可以使用以下代码:
var dict = [1: "abc", 2: "cde"] // dict is of type Dictionary<Int, String> dict[3] = "efg"
如果您以后需要将其分配给NSDictionary类型的变量,只需进行显式转换:
let nsDict = dict as! NSDictionary
而且,如前所述,如果您想将它传递给一个期待的函数NSDictionary,请按原样传递它而不进行任何强制转换或转换。