重複の可能性:
Javaはフロートして倍増しますが、0.0 +0.1+…+0.1== 0.9000001を回避するにはどうすればよいですか?
Java androidでの二重乗算の精度の問題をどのように克服できますか?文字列値を二重値に変換していることに注意してください。
例:2つのdouble値を乗算する場合:
double d1 = Double.valueOf("0.3").doubleValue() * Double.valueOf("3").doubleValue();
System.out.println("Result of multiplication : "+d1);
次の結果が得られます:0.8999999999999999
私が得ている結果のいくつかはです。
0.6 * 3 = 1.7999999999999998;
0.2 * 0.2 = 0.04000000000000001;
等
上記の結果の代わりに、次の結果を取得したいと思います。
0.3 * 3 = 0.9;
0.6 * 3 = 1.8;
0.2 * 0.2 = 0.04;
私はそれを最も近い整数に丸めようとしているのではないことを覚えておいてください。