2009-10-14 3 views
0

Я заметил, что при тестировании GPS-местоположений на Android можно найти значение -123 как -23.83333336. Есть ли способ форматировать входящие местоположения GPS, например, в пределах двух десятичных знаков?Android GPS-формат результата

Таким образом, я могу хранить такие значения, как -123.83, против более длинных числовых значений. Я проверил DecimalFormat и NumberFormat, но это строки, а мои номера - в два раза, и я не могу найти лучший способ.

И кто-нибудь знает максимальное значение местоположения в числовых значениях? Зная, что я могу сделать что-то вроде

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

зная наибольшее количество находится в тысячах и т.д.

ответ

2

функция, как это будет округлить без преобразования в строку:

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

1

Вы можете умножить его на сто и сохранить его в целочисленном размере, если вы пытаетесь реплицировать число с фиксированной точностью бер.