如何设置输出格式lat
,lng
如下所示:0.000000
?
double lat = marker.getPosition().latitude;
double lng = marker.getPosition().longitude;
最好不要转换为 a String
,以便输出是 a double
。
Java 中的数字没有任何与它们相关的输出格式。要完全输出它们,它们会被转换为 a String
,即使您调用System.out.println(marker.getPosition().latitude)
.
可以double
像任何数字一样格式化 a ,但仅限于转换为 a 时String
。
您可以使用DecimalFormat
:
DecimalFormat df = new DecimalFormat("0.000000");
String formattedLat = df.format(marker.getPosition().latitude);
(这0
是必要的,而不是#
显示尾随零。)
也可以使用String.format()。
String
但是如果要格式化数字,则必须转换为 a 。
您可以尝试使用DecimalFormat将此方法舍入到小数点后 6 位
double roundDecimals(double d) {
DecimalFormat twoDForm = new DecimalFormat("0.000000");
return Double.valueOf(twoDForm.format(d));
}
像这样使用:
double lat = roundDecimals(marker.getPosition().latitude);
double lng = roundDecimals(marker.getPosition().longitude);
@TronicZomB 发布的链接有更多相关信息,值得一读。