本文介绍了从字符串中获取 doubleValue 时如何防止舍入?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我从服务器以字符串格式的 JSON 获取纬度和经度,然后我通过使用默认的 doubleValue 函数将纬度和经度的值转换为双精度值来使用此纬度和经度,但使用此值四舍五入.那么,从字符串中获取 doubleValue 时如何防止舍入?这是我的代码

I am getting latitude and longitude from server in JSON which is in string format then i am using this latitude and longitude by converting the values of latitude and longitude in double value by using default doubleValue function but by using this value is rounded off. So, How can i prevent the rounding off when getting doubleValue from string?Here is my code

  CLLocationCoordinate2D defaultLoc;

            defaultLoc.latitude = [[self.obj valueForKey:@"latitude"] doubleValue];
            defaultLoc.longitude = [[self.obj valueForKey:@"longitude"] doubleValue];

            NSLog(@"latitude : %f longitude : %f",defaultLoc.latitude,defaultLoc.longitude);

推荐答案

格式说明符 %f 默认情况下将双精度值四舍五入到小数点后六位.尝试将格式指定为 %.10f 或您需要的任何小数位数.

The format specifier %f rounds the double values to six decimals by default. Try specifing the format as %.10for whatever number of decimals you need.

这篇关于从字符串中获取 doubleValue 时如何防止舍入?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

06-06 15:27