Windows - Java の高精度操作の問題に関するヘルプ
typecho
typecho 2017-06-28 09:22:10
0
3
931

会社のプロジェクトでは高精度の演算が多く必要なので、最初は double 型の演算を使用しましたが、後で double 型の演算を使用すると一部の値の精度が理想的な範囲を超えていることが判明したため、BigDecimal を使用して計算しました。今問題になっているのは BigDecimal 計算効率が倍の数十倍遅く、データ量が多いと非常に遅くなります。何か良い解決策はありますか?この問題は早急に解決する必要があります。

リーリー
typecho
typecho

Following the voice in heart.

全員に返信(3)
刘奇

C または C++ を使用して高精度の演算を実行する場合を除いて、パフォーマンスと精度の両方を考慮する方法はないようです。

いいねを押す +0
扔个三星炸死你

大学のコンピュータ専攻には「計算手法」と呼ばれるコースがあり、精度が限られた計算プロセスでのエラーを最小限に抑える方法を具体的に議論します。興味があれば、関連する教材を見つけることができます。

いいねを押す +0
学霸

後で、double 型演算を使用した後のいくつかの値の精度が理想的な範囲を超えていることがわかりました
それは超えていますか、それとも満足していませんか?

これは、stackoverflow で見つけた平方根を計算するコードです。自分のマシンでテストしたところ、上記のコードよりも約 10 倍高速になりました。
つまり、第一に、改善されたアルゴリズムによってパフォーマンスを向上させることができます。第二に、最善の方法は、上記のライブラリなどの既存のライブラリを見つけて直接使用することです。 リーリー

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート