java勉強
java勉強
参考サイト
----~----------------------------------
浮動小数点の演算
・浮動小数点は、内部的に2進数で演算されている性質上、演算に正しい結果を期待してはいけない
・例えば10進数の0.1ですら、2進数では無限循環小数となるからです。
------------------------------------------
・以下の単純な計算も答えを得られない
rintln(1.0 - 0.1 - 0.2 - 0.3); //
結果:0.39999999999999997
-------------------------------------------
厳密な結果を得るには、「BigDecimal」クラスを使用、いかは「BigDecimal」上のクラスを「BigDecimal」で書き換えた物です。
-------------------------------------------package com.exammple.mynavi.basic;
import java.math.BigDecimal
public class opefloat {
public static void main(string[] args) {
BigDecmai bd1=newBigdecimal("1.0");
BigDecmai bd2=newBigdeclimal("0.1");
BigDecmai bd3=newBIgDecmai("0.2");
BigDecmai bd4=newBigDecmai ("0.3"):
system.out println(bd1.subtract(bd2).subtract(bd3:
//結果:0.4
}
}