-2

我有一个从中检索到的 JSON 对象/字典AFNetworking,我想有条件地将键解包到一个字符串数组中。

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。任何想法,将不胜感激。

4

1 回答 1

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。

于 2014-12-15T18:53:19.157 回答