Ios NSNumber转换为双重发行-Swift

Ios NSNumber转换为双重发行-Swift,ios,swift,nsnumber,Ios,Swift,Nsnumber,我在obj-c中有一个包含此数据的数组,纬度和经度是一个NSNumber [<RequestAddress> [latitude]: 38.63180843974196 [longitude]: 33.12896232001408 [addressText]: address Name [isStartedPoint]: 1 </RequestAddress>] [ [纬度]:38.63180843974196 [经度]:33.12896232001408 [

我在obj-c中有一个包含此数据的数组,
纬度
经度
是一个
NSNumber

[<RequestAddress> 
 [latitude]: 38.63180843974196
 [longitude]: 33.12896232001408
 [addressText]: address Name
 [isStartedPoint]: 1
</RequestAddress>]
[
[纬度]:38.63180843974196
[经度]:33.12896232001408
[地址文本]:地址名称
[isStartedPoint]:1
]
我试着打印这两个值,结果是这样的

if let value = parentNewCarRequestVC.request.address{

    print(value) // value = (
"<RequestAddress> \n   [latitude]: 39.6954240771316\n   [longitude]: 33.10735601860666\n   [addressText]: address Name\n   [isStartedPoint]: 1\n</RequestAddress>"
)

    let number = Double(value[0].latitude)
    print("Result:\(number)") //Result: 6.94109152851164e-310
}
如果let value=parentNewCarRequestVC.request.address{
打印(值)//值=(
“\n[纬度]:39.6954240771316\n[经度]:33.10735601860666\n[地址文本]:地址名称\n[起始点]:1\n”
)
设数字=双精度(值[0]。纬度)
打印(“结果:\(数字)”)//结果:6.94109152851164e-310
}
而应该是38.6318


那么,我的问题在哪里呢?

如果纬度和经度是NSnumber,请使用doubleValue属性:

let number = value[0].latitude.doubleValue
print("Result:\(number)")

值[0]显示的值是多少。纬度
?你在操场上查过了吗?我已经更新了我的答案,上面显示了价值的内容。不,我没有在Playway@rpt中检查示例数组没有意义,可能需要是一个字典,而不是数组,请研究定义字典和数组的语法。当我这样编写时,会收到以下错误消息
对成员纬度的模糊引用
您需要更好地解释您的数据结构。地址是什么?它是对象还是字典?值是数组还是单个RequestAddress对象?无需将
NSNumber
转换为
double
,print语句将使用
description
方法。@MrBeardsley它是RequestAddress对象