首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >xcode 9.3中的Json数据

xcode 9.3中的Json数据
EN

Stack Overflow用户
提问于 2018-04-12 19:19:35
回答 1查看 82关注 0票数 0

我刚刚更新到Xcode9.3,遇到了一些奇怪的事情。下面的guard语句失败,因为json数据不能像所示那样转换;尽管在Xcode9.3之前它工作得很好(就像在Xcode9.2中一样)

代码语言:javascript
复制
guard let dataRates = json?["data"] as? [String : Float] else {
   return
}

这个问题似乎与浮动有关;所以,现在我需要使用一个双精度,如下所示:

代码语言:javascript
复制
guard let dataRates = json?["data"] as? [String : Double] else {
   return
}

这很好,但是为什么现在需要这样做呢?

数据从web上下载并序列化,如下所示:

代码语言:javascript
复制
let json = try JSONSerialization.jsonObject(with: data, options: .mutableContainers) as? [String:Any]

..。示例数据如下所示:

代码语言:javascript
复制
▿ 0 : 2 elements
  - key : USDLAK
  - value : 8275.999701999999
▿ 1 : 2 elements
  - key : USDUZS
  - value : 8074.999885

▿ 2 : 2 elements
  - key : USDKWD
  - value : 0.2998

任何洞察力都是值得欣赏的。

我还应该提到我使用的是Swift 3.2。当我试图迁移到Swift 4时,Xcode迁移工具崩溃了。这是我升级到Xcode 9.3的原因之一;希望migrator可以工作!

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2018-04-13 08:11:44

看起来SE-0170已经包含在Swift 3.3中了,这也是现在Xcode9.3附带的内容。Xcode9.2与Swift 3.2一起发布。这就解释了为什么这是Xcode9.3的问题,而不是9.2的问题。有关更多详细信息,请参阅here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49795185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档