Android Double太精确了

时间:2015-02-03 17:29:20

标签: java android

我正在使用Double将互联网上的纬度和经度发送到服务器,但值为:

2.1188253687859282E155

有没有办法让这个让人精确?我只需要在"之后真正需要前六个数字。" 如

2.118825

有没有办法做到这一点?如果是这样的话?

非常感谢

3 个答案:

答案 0 :(得分:2)

您需要使用DecimalFormat

DecimalFormat formatter= new DecimalFormat("00.000000");//Your precision specified in the number of zeroes.
formatter.setRoundingMode(RoundingMode.UP);//In Case you need rounding
String s=formatter.format(double_val).toString();

答案 1 :(得分:0)

DecimalFormat formatter = new DecimalFormat("#0.000000");
formatter.format(value);

答案 2 :(得分:0)

您是否尝试过以下方面的内容:

 (long) ((int)(d * 1000000)) / 1000000;