3

私はこのフォーマットで緯度と経度を取得します

Latitude23.132679999999997、Longitude72.20081833333333

しかし、私はこの形式にしたい

緯度=23.132680および経度72.200818

どうすれば変換できますか

4

6 に答える 6

7
double Latitude = 23.132679999999997;
int precision =  Math.pow(10, 6);
double new_Latitude = double((int)(precision * Latitude))/precision;

これにより、小数点以下6桁のみが表示されます。

于 2012-05-15T11:41:06.280 に答える
6
double d=23.132679999999997;
DecimalFormat dFormat = new DecimalFormat("#.######"); 

d= Double.valueOf(dFormat .format(d));
于 2012-05-15T11:37:53.750 に答える
2

このように問題を解決したら-

String.format("%.6f", latitude);

戻り値は文字列です。したがって、文字列の結果が必要な場合は、これを使用できます。

doubleが必要な場合は、Double.parseDouble()メソッドを使用して変換できます。

于 2012-05-15T12:04:30.590 に答える
1

ですから、倍精度浮動小数点数を任意の桁数に丸めたいのですね。

于 2012-05-15T11:38:00.973 に答える
0

文字列として緯度と経度がある場合は、次のことができます

latitude = latitude.substring(0,latitude.indexOf(".")+6);

もちろん、「。」の後に少なくとも6文字あることを確認する必要があります。文字列の長さをチェックする

于 2012-05-15T11:39:59.540 に答える
0

のように使用できます

DecimalFormat df = new DecimalFormat("#,###,##0.00");
System.out.println(df.format(364565.14343));
于 2012-05-15T11:37:58.700 に答える