public class Test {
public static void main(String[] args) {
java.math.BigDecimal big1 = new java.math.BigDecimal("600");
BigDecimal big2 = new BigDecimal("300");
//两个BigDecimal相加
big1 = big1.add(big2);
System.out.println(big1);
//两个BigDecimal相减
big1 = big1.subtract(big2);
System.out.println(big1);
//两个BigDecimal相乘
big1 = big1.multiply(big2);
System.out.println(big1);
//两个BigDecimal相除
big1 = big1.divide(big2);
//两个小数BigDecimal相除
big1=big1.divide(big2,2, java.math.BigDecimal.ROUND_DOWN);
System.out.println(big1);
//如果是Long 型
BigDecimal big3 = BigDecimal.valueOf(200L); big1 = big1.subtract(big3); System.out.println("big1=" + big1);
}
}
备注:规避默认数据以科学计数法存储,运算时会因为小数点的原因,造成计算错误
本文提供了一个使用Java中BigDecimal类进行精确数学运算的例子,包括加、减、乘、除操作,并展示了如何避免科学计数法引起的精度问题。
2245

被折叠的 条评论
为什么被折叠?



