Android GPS结果格式

Android GPS结果格式,android,formatting,gps,double,decimal,Android,Formatting,Gps,Double,Decimal,我注意到在测试GPS位置时,一个值−123可能会在Android上出现−23.83333336. 有没有办法格式化输入的GPS位置,例如在两个小数点以内 这样我就可以像这样存储值−123.83与更长的数值相反。我已经签出了DecimalFormat和NumberFormat,但这些是字符串,我的数字是双精度的,我找不到更好的方法 有人知道一个位置的最大值吗?知道了这一点,我可以做 DecimalFormat df = new DecimalFormat("####.##"); 知道最大的数字是

我注意到在测试GPS位置时,一个值−123可能会在Android上出现−23.83333336. 有没有办法格式化输入的GPS位置,例如在两个小数点以内

这样我就可以像这样存储值−123.83与更长的数值相反。我已经签出了
DecimalFormat
NumberFormat
,但这些是字符串,我的数字是双精度的,我找不到更好的方法

有人知道一个位置的最大值吗?知道了这一点,我可以做

DecimalFormat df = new DecimalFormat("####.##");

知道最大的数字是以千为单位的,等等。

这样的函数将在不转换为字符串的情况下对其进行四舍五入:

public static final double roundDouble(double d, int places) {
    return Math.round(d * Math.pow(10, (double) places)) / Math.pow(10,
        (double) places);
}

例如,
roundDouble(502.23525,2)
将生成502.24

这样的函数将在不转换为字符串的情况下对其进行取整:

public static final double roundDouble(double d, int places) {
    return Math.round(d * Math.pow(10, (double) places)) / Math.pow(10,
        (double) places);
}

例如,
roundDouble(502.23525,2)
将生成502.24

如果您尝试复制一个固定精度的数字,您可以将其乘以100并存储为整数。

如果您尝试复制一个固定精度的数字,您可以将其乘以100并存储为整数