我有一个从AFNetworking
检索到的JSON对象/字典,我想有条件地将密钥解包为一个字符串数组。
var person: [String : AnyObject] = ...
if let interests = person["interests"] as [String]{
// Do something
}
我收到以下错误消息:(String : AnyObject) is not convertible to [String]
。我认为我不能将person
强制转换为[String : Any]
,因为它来自[String : AnyObject]
框架中的AFNetworking
。任何想法都将不胜感激。
答案 0 :(得分:3)
更新您的Xcode。您使用的是旧版本。在Xcode 6.1之前,String
不被视为对象类型:您必须改为使用NSString
:
if let interests = person["interests"] as? [NSString] {
Apple解决了这个问题,因此现在可以使用Xcode 6.1:
if let interests = person["interests"] as? [String] {
由于Swift正在迅速发展,因此建议您及时了解最新发布的Xcode版本,在撰写本文时为Xcode 6.1.1。