BigDecimal加減乗除演算と精度制御
1705 ワード
1.BigDecimalのメリットはjavaの浮動小数点数がdoubleとfloatで表されています.彼らは計算中に精度の問題が発生し、お金の計算にかかわるとdoubleやfloatで計算できません.BigDecimalを使用する必要があります.
2.簡単にBigDecimalを使って計算する
3.精度の制御
ps:公式apiで与えられたソリューションはstringタイプの構造関数を用いて精度を失わないことを保証する
この記事は技術的な参考に限られ、個人のノートで使用されます.
2.簡単にBigDecimalを使って計算する
public static void main(String[] args) {
BigDecimal bl = new BigDecimal("100.369");
BigDecimal b2 = new BigDecimal("1.369");
String s = new String("2");
BigDecimal bigDecimal = bl.add(b2); //
BigDecimal bigDecimal = bl.subtract(b2); //
BigDecimal bigDecimal = bl.multiply(b2); //
BigDecimal bigDecimal = bl.divide(b2); //
System.out.println(bigDecimal);
}
3.精度の制御
:
//
System.out.println(newDecimalFormat("0").format(pi)); //3
//
System.out.println(newDecimalFormat("0.00").format(pi)); //3.14
// , 0 。
System.out.println(new DecimalFormat("00.000").format(pi));// 03.142
//
System.out.println(newDecimalFormat("#").format(pi)); //3
// ,
System.out.println(new DecimalFormat("#.##%").format(pi)); //314.16%
longc=299792458; //
// ,
System.out.println(newDecimalFormat("#.#####E0").format(c)); //2.99792E8
// ,
System.out.println(newDecimalFormat("00.####E0").format(c)); //29.9792E7
// 。
System.out.println(newDecimalFormat(",###").format(c)); //299,792,458
//
System.out.println(newDecimalFormat(" ,### 。").format(c));
ps:公式apiで与えられたソリューションはstringタイプの構造関数を用いて精度を失わないことを保証する
この記事は技術的な参考に限られ、個人のノートで使用されます.