中級 › 0.1 + 0.2 が 0.3 にならない理由 › パターン3
0.1 + 0.2 が 0.3 にならない理由
2進小数の限界です。
1 import java.math.BigDecimal; 2 3 public class Main { 4 public static void main(String[] args) { 5 BigDecimal a = new BigDecimal(____________); ^ 6 System.out.println(a); 7 } 8 }
出力: 0.1000000000000000055511151231257827021181583404541015625期待: 0.1 (コンパイルは通っています)
空欄を埋めてビルドを通す
doubleを渡すと誤差ごと取り込まれます。BigDecimalには文字列で渡すのが鉄則です。
次の問題