据我所知,NSNumber不能超过1/10。我可以使用什么作为向Core Data添加双精度(经度/纬度)的替代方法?直接使用double不起作用,NSNumber会截断该值。
NSManagedObject *newManagedObject = [NSEntityDescription
insertNewObjectForEntityForName:[entity name]
inManagedObjectContext:managedObjectContext];
if ([locObj valueForKey:@"latitude"] != NULL) {
NSNumber *latitude = [NSNumber numberWithInt:[[locObj valueForKey:@"latitude"] doubleValue]];
[newManagedObject setValue:latitude forKey:@"latitude"];
}
if ([locObj valueForKey:@"longitude"] != NULL) {
NSNumber *longitude = [NSNumber numberWithInt:[[locObj valueForKey:@"longitude"] doubleValue]];
[newManagedObject setValue:longitude forKey:@"longitude"];
}
答案 0 :(得分:1)
为什么不使用[NSNumber numberWithDouble:x]
?
答案 1 :(得分:0)
NSDecimalNumber
吗?否则我相信你可能不得不处理四舍五入。