使用 [NSNumber numberWithDouble:] 将 double 转换为 NSNumber
有一个坐标对象,包含三个变量纬度(NSNumber),经度(NSNumber)和时间(NSDate),为了在我的模拟器上检查程序,我给出了以下代码,
[coordinate setLatitude:[NSNumber numberWithDouble:23.234223]];
[coordinate setLongitude:[NSNumber numberWithDouble:73.234323]];
但是当我 NSLog 坐标.纬度和坐标.经度时,它显示0.00000
NSLog(@"cordlat : %f",coordinate.latitude);
NSLog(@"cordlong : %f",coordinate.longitude);
可能是什么问题???
there is a coordinate object with three variables latitude(NSNumber) ,longitude(NSNumber) and time(NSDate),for checking the program on my simulator,i gave the folowing code
[coordinate setLatitude:[NSNumber numberWithDouble:23.234223]];
[coordinate setLongitude:[NSNumber numberWithDouble:73.234323]];
however when i NSLog coordinate.latitude and coordinate.longitude,it diplays 0.00000
NSLog(@"cordlat : %f",coordinate.latitude);
NSLog(@"cordlong : %f",coordinate.longitude);
what can be the problem???
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您无法使用
%f
打印NSNumber
。您可以执行以下操作之一:NSLog(@"cordlat : %@", axis.latitude);
NSLog(@"cordlat : %f", axis.latitude.doubleValue);
You can't print an
NSNumber
with%f
. You can do one of the following:NSLog(@"cordlat : %@", coordinate.latitude);
NSLog(@"cordlat : %f", coordinate.latitude.doubleValue);