得到此错误:
致命错误:无法将NSNumber桥接到Float.问题是什么?
这是原始消息,它是float而不是string.
{\"name\":\"Tomas\",\"gender\":\"male\",\"probability\":0.99,\"count\":594}
Run Code Online (Sandbox Code Playgroud)
Jea*_*nès 28
Swift/Foundation中有许多不同类型的数字.您NSKeyValueCoding已被设置为实例NSNumber(请参阅下面的JSON序列化文档的摘录),因此您需要按原样阅读,然后要求将其转换NSNumber为Float需要:
if let n = d.value(forKey: "probability") as? NSNumber {
let f = n.floatValue
}
Run Code Online (Sandbox Code Playgroud)
JSONSerialization 文件说:
可以转换为JSON的Foundation对象必须具有以下属性:
- 顶级对象是NSArray或NSDictionary.
- 所有对象都是NSString,NSNumber,NSArray,NSDictionary或NSNull的实例.
- 所有字典键都是NSString的实例.
- 数字不是NaN或无穷大.
| 归档时间: |
|
| 查看次数: |
4540 次 |
| 最近记录: |