Преобразование double в NSNumber с использованием [NSNumber numberWithDouble:]

Есть координатный объект с тремя переменными широта (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);

в чем может быть проблема???

1 ответ

Решение

Вы не можете распечатать NSNumber с %f, Вы можете сделать одно из следующего:

  1. NSLog(@"cordlat : %@", coordinate.latitude);
  2. NSLog(@"cordlat : %f", coordinate.latitude.doubleValue);
Другие вопросы по тегам