-2

如何设置输出格式latlng如下所示:0.000000

  double lat = marker.getPosition().latitude;
  double lng = marker.getPosition().longitude;

最好不要转换为 a String,以便输出是 a double

4

2 回答 2

1

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 。

于 2013-03-19T21:01:09.157 回答
0

您可以尝试使用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 发布的链接有更多相关信息,值得一读。

于 2013-03-19T20:58:47.967 回答