无法将NSNumber桥接到Float Swift 3.3
Xcode更新后,我遇到了一个奇怪的问题。在我的应用程序中,当我从API获得响应时,我会手动解析它并将其映射到我的模型。我的代码中有很多地方Float
使用空合并将JSON值转换为如下所示:
randomVariable = jsonDict["jsonKey"] as? Float ?? 0
它过去可以正常工作,但是在更新后,它始终默认为0。为了确定原因,我尝试强制将其强制转换为Float
如下所示
randomVariable = jsonDict["jsonKey"] as! Float
这导致以下错误
无法将NSNumber桥接到Float
经过进一步调查,我发现Xcode使用的是Swift 3.3(以前,它使用的是Swift
3.2)。我在StackOverflow上发现的解决方案围绕着将其强制转换为NSNumber
而不是Float
。正如我上面提到的,我在我的应用程序中分布着相似的代码行。我想知道是否有解决此问题的方法。也许使用某种扩展?