Arrays 如何在swift中在数组中追加字典
我有一个字典数组,我正在尝试从数组中获取第一个对象,并将其追加到第二个数组中。字典是Arrays 如何在swift中在数组中追加字典,arrays,swift,dictionary,Arrays,Swift,Dictionary,我有一个字典数组,我正在尝试从数组中获取第一个对象,并将其追加到第二个数组中。字典是[String:AnyObject],数组是String。这是我在didSelectRowAtIndexPath: let myDictionary: [String: AnyObject] = dataArray[indexPath.row] as! [String : AnyObject] selectedArray.append(myDictionary) 但我得到了一个错误: 无法将类型“[String
[String:AnyObject]
,数组是String
。这是我在didSelectRowAtIndexPath:
let myDictionary: [String: AnyObject] = dataArray[indexPath.row] as! [String : AnyObject]
selectedArray.append(myDictionary)
但我得到了一个错误:
无法将类型“[String:AnyObject]”的值转换为预期的参数类型“String”
如何在数组中添加字典?您需要像这样声明字典类型的数组
[[String:AnyObject]]
,然后将字典
附加到该数组中
var selectedArray = [[String: AnyObject]]()
let myDictionary: [String: AnyObject] = dataArray[indexPath.row] as! [String : AnyObject]
selectedArray.append(myDictionary)
或者,如果您想要字符串数组[string]
,则需要像下面这样从字典中附加特定的字符串
var selectedArray = [String]()
let myDictionary: [String: AnyObject] = dataArray[indexPath.row] as! [String : AnyObject]
if let str = myDictionary["Key"] as? String {
selectedArray.append(str)
}
您需要像这样声明字典类型为[[String:AnyObject]]
的数组,而不是在该数组中追加dictionary
var selectedArray = [[String: AnyObject]]()
let myDictionary: [String: AnyObject] = dataArray[indexPath.row] as! [String : AnyObject]
selectedArray.append(myDictionary)
或者,如果您想要字符串数组[string]
,则需要像下面这样从字典中附加特定的字符串
var selectedArray = [String]()
let myDictionary: [String: AnyObject] = dataArray[indexPath.row] as! [String : AnyObject]
if let str = myDictionary["Key"] as? String {
selectedArray.append(str)
}
也许你在错误引文中有输入错误。。。请更正您如何声明selectedArray
?尝试将其声明为:-var selectedArray:NSMutableArray=NSMutableArray()。。。请更正您如何声明selectedArray
?尝试将其声明为:-var selectedArray:NSMutableArray=NSMutableArray()