私は16進数で緯度と経度の値だ:16進数を小数点(緯度/経度)に変換しますか?
0AF6CF83
D89B2933
私が得た小数に変換し...
183947139
-660920013
問題があり、Javaを使用して、次の形式で、これらの小数を取得する方法?
18.3947139
-66.0920013
これは私が実際に小数に六角を変換する方法を示します。
public static int hex2Decimal(String s) {
long longValue = Long.parseLong(s, 16);
int intValue = (int)longValue;
return intValue;
}
1.0e-7を乗算しないで1.0e7で割ります。もっと正確です。 –
@RolandIllig 'int'値の精度は10桁未満です。したがって、この計算の結果は9-10桁まで正確です。 'double'は15-17桁の精度を持つので、' 1e-7'の不正確さは無意味です。 – Andreas
受け入れられますが、除算には、 '%.7f'のようなフォーマットを使用する代わりに、Double.toStringを使用して期待される結果を得ることができるという利点があります。 –