私は以下の機能を持っており、double
のパラメータを変更することはできません。精度を損なうことなくdoubleを関数パラメータとして使用するにはどうすればよいですか?
double latitude = coordinate.x;
double longitude = coordinate.y;
createEPoint(latitude, longitude));
VARSの緯度と経度は小数点以下の多数(35.94777225005756)を有し、そしてIは、その精度を維持する必要があります。私はBigDecimalまたは他のクラスを使用することができることを知っていますが、私はcreateEPoint(double lat, double lon)
のパラメータを変更することはできません。
これで、EPointのパラメータを取得すると、緯度と経度の値が自動的に丸められます。これを回避し、数値の精度を保つためのアイデアはありますか?
まあ、倍精度が失われた場合は、パラメータの型を変更するだけでなく、そのことについて多くのことを行うことはできません。 – Thomas
これは、@Deprecatedアノテーションが便利なときです。したがって、メソッドのオーバーロードを検討してください。 –
ダブルスを受け入れる必要がある場合は、すでに遅すぎます。二重から来た時よりも精度を上げる魔法の方法はありません。 – khelwood