重複の可能性:
Java で浮動小数点演算が正確な結果を生成しない
私は奇妙なバグに出くわしたとき、最近プロジェクトに取り組んでいました。
65.12 から 2 を引いた値は 63.12 よりも大きい (等しくない)。
簡略化されたコードは次のとおりです。
System.out.println(65.12-2);
そしてコンソールの出力:
63.120000000000005
なぜそうなのかはわかりませんが、誰かが簡単な修正/回避策を知っていれば、それは素晴らしいことです!
ありがとう。